BR112012012573B1 - Método e sistema de codificação, decodificação hierárquicas de áudio - Google Patents
Método e sistema de codificação, decodificação hierárquicas de áudio Download PDFInfo
- Publication number
- BR112012012573B1 BR112012012573B1 BR112012012573-7A BR112012012573A BR112012012573B1 BR 112012012573 B1 BR112012012573 B1 BR 112012012573B1 BR 112012012573 A BR112012012573 A BR 112012012573A BR 112012012573 B1 BR112012012573 B1 BR 112012012573B1
- Authority
- BR
- Brazil
- Prior art keywords
- encoding
- layer
- subband
- extended
- core layer
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 239000010410 layer Substances 0.000 claims abstract description 582
- 239000012792 core layer Substances 0.000 claims abstract description 463
- 238000013139 quantization Methods 0.000 claims abstract description 346
- 230000005236 sound signal Effects 0.000 claims abstract description 15
- 238000012856 packing Methods 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 169
- 238000012986 modification Methods 0.000 claims description 52
- 230000004048 modification Effects 0.000 claims description 52
- 238000004364 calculation method Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 23
- 239000011159 matrix material Substances 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 7
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 7
- 230000003247 decreasing effect Effects 0.000 claims description 6
- 230000001174 ascending effect Effects 0.000 claims description 4
- 239000013585 weight reducing agent Substances 0.000 description 10
- 238000005266 casting Methods 0.000 description 7
- 238000005070 sampling Methods 0.000 description 6
- 238000010606 normalization Methods 0.000 description 5
- 230000033228 biological regulation Effects 0.000 description 4
- 239000000203 mixture Substances 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- JLYXXMFPNIAWKQ-UHFFFAOYSA-N γ Benzene hexachloride Chemical compound ClC1C(Cl)C(Cl)C(Cl)C(Cl)C1Cl JLYXXMFPNIAWKQ-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3082—Vector coding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/002—Dynamic bit allocation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0204—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/028—Noise substitution, i.e. substituting non-tonal spectral components by noisy source
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
- G10L19/038—Vector quantisation, e.g. TwinVQ audio
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Quality & Reliability (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
método e sistema de codificação, decodificação hierárquicas de áudio. são propostos método e sistema de codificação, decodificação hierárquicas de áudio. tal método inclui: dividir os coeficientes do domínio de frequência de um sinal de áudio depois da mdct em uma multiplicidade de sub-bandas de codificação, quantizando e codificando as sub-bandas de codificação de valores de envelope de amplitude de codificação e quantização; alocar bits a cada sub-banda de codificação da camada de núcleo, quantizando e codificando coeficientes do domínio de frequência da camada de núcleo para a obtenção de bist codificados dos coeficientes do domínio de frequência de camada de núcleo; calcular o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual da camada de núcleo; alocar bits a cada sub-banda de codificação da camada estendida, quantizando e codificando o sinal de codificação da camada estendida para obter bits codificados do sinal de codificação estendida; multiplexar e empacotar os bits codificados de envelope de valor de amplitude de cada sub-banda de codificação composta pelos coeficientes do domínio de frequência da camada de núcleo e da camada estendida, os bits codificados dos coeficientes de frequência de camada de núcleo, e os bits codificados do sinal de codificação da camada estendida, e finalmente transmitir à extremidade de decodificação.
Description
[001] A presente invenção se refere a um método e sistema de codificação, decodificação hierárquicas de áudio.
[002] A codificação hierárquica de áudio se refere à organização de correntes de código de codificação de áudio de um modo hierárquico, geralmente divididas em uma camada de núcleo e diversas camadas estendidas. Um decodificador somente pode decodificar as correntes de código da camada inferior (tal como a camada de núcleo) na ausência de correntes de código de codificação de camada mais elevada (tal como a camada estendida), e quanto maior for a quantidade de camadas decodificadas, melhor será a qualidade do tom.
[003] A tecnologia de codificação hierárquica tem valor de utilidade muito significativo para a rede de comunicação. Por um lado, a transmissão de dados pode ser efetuada completamente em conjunto por diferentes canais e a relação de perda de pacotes de cada canal pode ser diferente, necessitando neste caso o processamento hierárquico geralmente ser conduzido para os dados, sendo a parte importante nos dados transmitida em um canal estável, com uma relação de perda de pacotes relativamente baixa, ao passo que a parte menos importante dos dados é transmitida em um canal não estável com uma relação de perda de pacotes relativamente elevada, garantindo que ocorra somente uma relativa redução da qualidade do tom, e não a completa falha de decodificação de uma matriz de dados quando os pacotes são perdidos no canal não estável. Por outro lado, as larguras de banda de determinadas redes de comunicação (tal como a Internet) não são estáveis, e as larguras de bandas de diferentes usuários são diferentes, de modo que as exigências de usuários com diferentes larguras de bandas não podem ser satisfeitas simultaneamente usando-se uma taxa de código fixa, enquanto o esquema de codificação hierárquica pode habilitar diferentes usuários para obter a qualidade de tom ótima nas condições de largura de bandas que eles possuem.
[004] No esquema de codificação hierárquica de áudio convencional no padrão g. 729.1, por exemplo, e no G.VBR de ITU (International Telecommunication Union), a camada de núcleo usa a codificação de áudio ao passo que a camada estendida adota a codificação do domínio de tempo ou do domínio de transformada. O esquema de codificação da camada de núcleo é independente daquele da camada estendida, o que resultará em uma eficiência baixa decodificação e também terá influência na qualidade da codificação do sinal de música em uma condição de transmissão da taxa de código média/baixa. Em outros esquemas hierárquicos, a taxa de código variável (ou retraível) do esquema de codificação de BSAC (Código Aritmético de Bit-Fatia), por exemplo, adotado por MPEG4 (Moving Picture Experts Group 4), a alocação de bits e a operação hierárquica são somente implementados com base no tamanho do item de dados propriamente dito sem considerar as características de distribuição de percepção residual do sinal como um todo propriamente dito, de modo que as informações existentes da camada de núcleo não podem ser utilizadas para ajudar a camada estendida a conduzir a codificação resultando assim em uma eficiência relativamente baixa de codificação.
[005] O problema técnico a ser resolvido na presente invenção consiste em superar a deficiência da técnica anterior fornecendo um sistema e método hierárquico de codificação e decodificação de áudio com alto grau de eficiência.
[006] Para resolver o problema técnico acima, a presente invenção propõe um método de codificação hierárquico de áudio, que compreende as seguintes etapas: dividir os coeficientes do domínio de frequência de um sinal de áudio para o qual foi conduzida uma Transformada Discreta de Cossenos Modificada (MDCT) nos coeficientes do domínio de frequência de camada de núcleo e nos coeficientes do domínio de frequência de camada estendida, e dividir os coeficientes do domínio de frequência da camada de núcleo e os coeficientes do domínio da frequência da camada estendida em uma multiplicidade de sub-bandas de codificação e quantizar e codificar os valores de envelope de amplitude das subbandas de codificação; alocar bits a cada sub-banda de codificação de uma camada de núcleo de acordo com um valor de envelope de amplitude de cada subbanda de codificação da camada de núcleo, quantizar e codificar então os coeficientes do domínio de frequência da camada de núcleo para a obtenção de bits codificados dos coeficientes do domínio de frequência da camada de núcleo; calcular um valor de envelope de amplitude de cada sub-banda de codificação de um sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e um número de alocação de bits de cada sub-banda de codificação da camada de núcleo; alocar os bits a cada sub-banda de codificação de uma camada estendida de acordo com um sinal de codificação de camada estendida composto pelo sinal residual da camada de núcleo e pelos coeficientes do domínio de frequência de camada estendida e o valor de envelope de amplitude de cada sub-banda de codificação composto pelo sinal de codificação da camada estendida, quantizar e codificar então o sinal de codificação da camada estendida para obter bits codificados do sinal de codificação da camada estendida; e multiplexar e empacotar os bits codificados de envelope do valor de amplitude de cada sub-banda de codificação composta pelos coeficientes do domínio de frequência da camada de núcleo e pelos coeficientes do domínio de frequência da camada estendida, os bits codificados dos coeficientes do domínio de frequência da camada de núcleo e os bits codificados do sinal de codificação da camada estendida, e transmitir então para uma extremidade de decodificação.
[007] Além disso, na etapa de divisão dos coeficientes do domínio de frequência de um sinal de áudio para o qual foi conduzida a Transformada Discreta de Cossenos Modificada (MDCT) nos coeficientes do domínio de frequência da camada de núcleo e coeficientes do domínio de frequência da camada estendida, dividir os coeficientes do domínio de frequência da camada de núcleo e os coeficientes do domínio de frequência da camada estendida em uma multiplicidade de sub-bandas de codificação, - dividir os coeficientes do domínio de frequência depois de MDCT em uma multiplicidade de sub-bandas de codificação uniformemente espaçadas ou dividir em uma multiplicidade de sub-bandas de codificação não uniformes de acordo com as características perceptivas auditivas; agrupar as sub-bandas de codificação de baixa frequência como sub-bandas de codificação de camada de núcleo e agrupar as sub-bandas de codificação de alta frequência como sub-banda de codificação de camada estendida.
[008] Além disso, a alocação de bits com duração variável de etapas é implementada para cada sub-banda de codificação de acordo com os valores de envelope de amplitude das sub-bandas de codificação; durante o processo de alocação de bits, um comprimento de etapa de alocação de bits é de 1 bit, e o comprimento de etapa de redução de importância depois da alocação de bits é de 1 para a subbanda de codificação cujo número de alocação de bits é 0, um comprimento de etapa de alocação de bits para a alocação adicional de bits é de 0,5 bit e um comprimento de etapa da redução de importância depois da alocação de bits é de 0,5 para uma sub-banda de codificação cujo número de alocação de bits é superior a 0 e inferior a um limiar de classificação, e um comprimento de etapa de alocação de bits para a alocação de bits adicional é de 1 bit e o comprimento de etapa de redução de importância depois da alocação de bits é 1 para uma subbanda de codificação cujo número de alocação de bits é superior ou igual ao limiar de classificação; o número de alocação de bits é um número de bits alocado a um coeficiente do domínio de frequência único em uma sub-banda de codificação.
[009] Além disso, na etapa de quantização e codificação dos coeficientes do domínio de frequência da camada de núcleo e do sinal de codificação de camada estendida, quantizar e codificar vetores a serem quantizados da sub-banda de codificação cujo número de alocação de bits é inferior ao limiar de classificação usando uma quantização de vetor de retículo de pirâmide e quantizar e codificar os vetores a serem quantizados da sub-banda de codificação cujo número de alocação de bits é superior ao limiar de classificação usando quantização de vetor de retículo de esfera; o número de alocação de bits é um número de bits alocado a um coeficiente do domínio de frequência único em uma sub-banda de codificação.
[010] Além disso, na etapa do cálculo de um valor de envelope de amplitude de cada sub-banda de codificação de um sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e um número de alocação de bits de cada sub-banda de codificação da camada de núcleo, o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo é calculado do seguinte modo: quantizar inversamente o valor quantizado do coeficiente do domínio de frequência de camada de núcleo e implementar um cálculo de diferença em relação aos coeficientes do domínio de frequência de camada de núcleo para obter o sinal residual de camada de núcleo; dividir o sinal residual de camada de núcleo nas sub-bandas de codificação do mesmo modo como para o coeficiente do domínio de frequência de camada de núcleo, e calcular o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada de núcleo.
[011] Além disso, a etapa de cálculo do valor de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo compreende: calcular o expoente de quantização do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e implementar um cálculo de diferença em relação a um valor de modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo; em que, o valor da modificação do expoente da quantização de cada sub-banda de codificação é maior ou igual a 0, e não se reduz quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta; e quando o número de alocação de bits de uma sub-banda de codificação da camada de núcleo é 0, a modificação do expoente de quantização sendo 0, e quando o número de alocação de bits da subbanda de codificação da camada de núcleo é um número de alocação de bits máximo definido, sendo o valor do envelope de amplitude do sinal residual da camada de núcleo na sub-banda de codificação 0.
[012] Além disso, o valor de modificação do expoente de quantização de uma sub-banda de codificação é obtido de acordo com o número de alocação de bits da camada de núcleo, e quando o número de alocação de bits da subbanda de codificação da camada de núcleo for 0, 1, 1,5, 2, 2,5, 3, 3,5, 4, 4,5, 5, 6, 7 ou 8 respectivamente, o valor de modificação do expoente de quantização correspondendo à sub-banda de codificação será 0, 1, 2, 3, 4, 5, 5, 6, 7, 7, 9, 10 ou 12 respectivamente; além disso, esta etapa de obtenção de bits codificados dos coeficientes do domínio de frequência de camada de núcleo compreende: calcular o expoente de quantização do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e alocar bits de cada sub-banda de codificação da camada de núcleo; e normalizar o coeficiente do domínio de frequência de cada subbanda de codificação usando um valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada de núcleo reconstruída de acordo com o expoente de quantização do envelope de amplitude de cada sub-banda de codificação da camada de núcleo e quantizar e codificar de acordo com o número de alocação de bits de cada sub-banda de codificação da camada de núcleo usando a quantização de vetor de retículo de pirâmide e a quantização de vetor de retículo de esfera respectivamente para obter os bits codificados dos coeficientes do domínio de frequência de camada de núcleo; sendo que a etapa de obtenção dos bits codificados do sinal de codificação de camada estendida compreende: constituir o sinal de codificação de camada estendida com o sinal residual de camada de núcleo e os coeficientes do domínio de frequência de camada estendida; alocar bits a cada sub-banda de codificação da camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal de codificação de camada estendida; e normalizar o sinal de codificação de cada sub-banda de codificação usando um valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida reconstruída de acordo com o expoente de quantização do envelope de amplitude de cada sub-banda de codificação da camada estendida, e quantizar e codificar de acordo com o número de alocação de bits de cada subbanda de codificação da camada estendida usando quantização de vetor de retículo de pirâmide e quantização de vetor de retículo de esfera, respectivamente, para obter os bits codificados do sinal de codificação da camada estendida.
[013] Além disso, na etapa de multiplexação e empacotamento dos bits codificados do envelope de valor de amplitude de empacotamento de cada sub-banda de codificação composta pelos coeficientes do domínio de frequência de camada de núcleo e pelos coeficientes do domínio de frequência da camada estendida, os bits codificados dos coeficientes do domínio de frequência da camada de núcleo e os bits codificados do sinal de codificação da camada estendida, transmitindo então a uma extremidade de decodificação, a multiplexação e o empacotamento são implementados de acordo com o seguinte formato de corrente de código: lançar os bits de informação secundários da camada de núcleo depois de um cabeçalho de matrizes de um fluxo de código, lançar os bits codificados do envelope de valor de amplitude da sub-banda de codificação da camada de núcleo em um multiplexador de fluxo de bits MUX, e lançar então os bits codificados dos coeficientes do domínio de frequência da camada de núcleo no MUX; e lançar bits de informação secundária da camada estendida no MUX, lançar os bits codificados do envelope de valor de amplitude da sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida no MUX, e então lançar os bits codificados do sinal de codificação de camada estendida no MUX; os bits cujo número satisfaz as exigências da taxa de código são enviados à extremidade de decodificação de acordo com a taxa de código exigida.
[014] Além disso, os bits codificados do sinal de codificação de camada estendida são lançados no fluxo de código de acordo com um valor inicial de importância de cada sub-banda de codificação em uma ordem descendente e são enviados à extremidade de decodificação.
[015] Além disso, as informações secundárias da camada de núcleo incluem bits de sinalizador de codificação Huffman dos coeficientes de envelope de amplitude de codificação de sub-banda composta por MDCT, coeficientes do domínio de frequência da camada de núcleo de bits de sinalizador de codificação Huffman e bits do número de iterações; as informações secundárias da camada estendida incluem bits de sinalizador de codificação Huffman do sinal de codificação de camada estendida e bits do número de iterações.
[016] Além disso, a etapa de enviar os bits cujo número satisfaz as exigências da taxa de código à extremidade de decodificação compreende: codificar a camada de núcleo e a camada estendida dentro dos limites de uma banda de frequência total na qual a codificação é necessária de acordo com o número de bits para uma taxa de código máxima definida, de modo tal que a taxa de código máxima é atingida dentro dos limites da banda de frequência de codificação; depois dos bits codificados da camada de núcleo, lançar os bits codificados do sinal de codificação de camada estendida no multiplexador de fluxo de bits de acordo com o valor inicial de importância de cada sub-banda de codificação em uma ordem descendente; e enviar os bits que satisfazem as exigências de taxa de código à extremidade de decodificação com base em um princípio de que os bits codificados da sub-banda de codificação com o menor valor inicial de importância são os primeiros a serem rejeitados; sendo que a taxa de código correspondendo à camada de núcleo é marcada como camada L0, cada taxa de código correspondendo à camada estendida é marcada como camada L1_1, camada L1_2, até camada L1_K de acordo com o numero de bits rejeitados da camada estendida, sendo que a taxa de código da camada L1_K é precisamente a taxa de código máxima.
[017] Além disso, os limites da faixa de frequência de codificação são 013,6kHz, e quando a taxa de código máxima é de 64 kbps, os bits cujo número satisfaz as exigências de taxa de código são enviados à extremidade de decodificação de um modo de hierarquia de taxas de código do seguinte modo: agrupar os coeficientes do domínio de frequência de MDCT dentro de 0-6,4kHz dentro dos limites de 0-13,6kHz da banda de frequência de codificação em uma camada de núcleo, correspondendo a taxa de código máxima ao valor de 32 kbps da camada de núcleo e sendo marcada como camada L0; os limites da banda de frequência de codificação da camada estendida sendo de 0-13,6kHz, e sendo a sua taxa de código máxima de 64 kbps e sendo marcada como camada L1_5; antes de ser enviado à extremidade de decodificação, a taxa de código é dividida, de acordo com o número de bits rejeitados na camada L1_1 que corresponde a 36 kbps, camada L1_2 que corresponde a 40 kbps, camada L1_3 que corresponde a 48 kbps, camada L1_4 que corresponde a 56 kbps, e camada L1_5 que corresponde a 64 kbps.
[018] Além disso, depois da etapa de divisão de coeficientes do domínio de frequência de um sinal de áudio para o qual foi conduzida a Transformada Discreta de Cossenos Modificada (MDCT) nos coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência da camada estendida, o método compreende ainda: dividir os coeficientes do domínio de frequência de camada estendida, em uma ordem ascendente de frequências, em M partes, que são coeficientes do domínio de frequência de camadas estendidas a partir da camada estendida 1 e até a camada estendida M respectivamente, sendo que a frequência para o coeficiente do domínio de frequência na camada estendida 1 é a menor de todas e a frequência para o coeficiente do domínio de frequência na camada estendida M é a maior de todas; depois da dita etapa de quantização e codificação, os coeficientes do domínio de frequência da camada de núcleo, o método compreende ainda: quantizar inversamente o valor quantizado do coeficiente do domínio de frequência de camada de núcleo, e implementar um cálculo da diferença em relação ao coeficiente do domínio de frequência de camada de núcleo para obter um sinal residual da camada de núcleo; na dita etapa de cálculo de um valor de envelope de amplitude de cada sub-banda de codificação de um sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e um número de alocação de cada sub-banda de codificação da camada de núcleo, dividir o sinal residual de camada de núcleo nas sub-banda de codificação do mesmo modo como para a camada de núcleo, e calcular o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada de núcleo; na etapa de alocação de bits a cada sub-banda de codificação de uma camada estendida de acordo com um sinal de codificação de camada estendida composto pelo sinal residual da camada de núcleo e pelos coeficientes do domínio de frequência de camada estendida e a um valor de envelope de amplitude de cada sub-banda de codificação composto pelo sinal de codificação de camada estendida e então de quantização e codificação do sinal de codificação de camada estendida para obter bits codificados do sinal de codificação de camada estendida. constituir o sinal de codificação da camada estendida 1 com sinal residual de camada de núcleo e o coeficiente do domínio de frequência da camada estendida 1, calcular o expoente de quantização de envelope de amplitude de cada sub-banda de codificação de acordo com o sinal de codificação da camada estendida 1, e alocar bits para da cada subbanda de codificação da camada estendida 1; quantizar e codificar o sinal de codificação da camada estendida 1 de acordo com o número de alocação de bits de cada sub-banda de codificação da camada estendida 1; quantizar inversamente o valor quantizado do sinal de codificação da camada estendida i, e implementar um cálculo da diferença em relação ao sinal de codificação da camada estendida i para obter o sinal residual da camada estendida i; dividir o sinal residual da camada estendida i nas sub-bandas de codificação do mesmo modo como para a camada estendida i, e calcular o valor do envelope de amplitude de cada sub-banda de codificação do sinal residual da camada estendida i de acordo com o valor de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada estendida i; constituir o sinal de codificação da camada estendida i+1 com o sinal residual da camada estendida i e o coeficiente do domínio de frequência da camada estendida i+1, e alocar bits a cada sub-banda de codificação da camada estendida i+1 de acordo com o expoente de quantização do envelope de amplitude de cada sub-banda de codificação do sinal de codificação da camada estendida i+1; e normalizar, quantizar o vetor e codificar o sinal de codificação de cada sub-banda de codificação da camada estendida i+1 usando um valor de envelope de amplitude de quantização e o número de bits codificados de cada sub-banda de codificação da camada estendida i+1 reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação de camada estendida i+1 para obter os bits codificados do sinal de codificação da camada estendida i+1; sendo i=1, ...N-1, e N números inteiros positivos maiores do que 2.
[019] Além disso, a multiplexação e o empacotamento são implementados de acordo com o seguinte formato de fluxo de código; depois dos bits codificados da camada de núcleo, lançar os bits de uma camada estendida com um número de série menor em um multiplexador de fluxo de bits MUX, e em seguida lança os bits de uma camada estendida com um número de série maior no multiplexador de fluxo de bits MUX, isto é, lançar os bits de camada estendida i primeiro, e em seguida lançar os bits da camada estendida i+1 no MUX;
[020] Na camada estendida idêntica, lançar bits de informações secundárias da camada estendida no MUX, lançar os bits codificados do valor de envelope de amplitude da sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida no MX primeiro e em seguida lançar os bits codificados do sinal de codificação de camada estendida no MUX; enviar os bits cujo número satisfaz as exigências de taxa de código à extremidade de decodificação de acordo com a taxa de código exigida.
[021] Além disso, os bits cujo número satisfaz as exigências de taxa de código são enviados à extremidade de decodificação em um método de hierarquia de taxa de código conforme abaixo: codificar a camada de núcleo e as camadas estendidas 1 a M dentro dos limites de uma banda de frequência total em que a codificação é necessária de acordo com o número de bits para uma taxa de código máxima definida, de modo tal que a taxa de código máxima seja atingida dentro dos limites da banda de frequência de codificação; depois dos bits codificados da camada de núcleo, lançar, de preferência, os bits de uma camada estendida com um número de série menor no multiplexador de corrente de bits e em seguida, de preferência, lançar os bits codificados da sub-banda de codificação com um valor inicial maior de importância no multiplexador de corrente de bits na camada estendida idêntica; para cada camada estendida, rejeitar os bits desnecessários na parte traseira do multiplexador de corrente de bits de acordo com as exigências de projeto da taxa de código em cada camada, isto é, enviar os bits cujo número satisfaz as exigências da taxa de código à extremidade de decodificação de acordo com um princípio de que os bits codificados da sub-banda de codificação com o menor valor inicial de importância são rejeitados em primeiro lugar; marcar a taxa de código correspondente à camada de núcleo como uma camada L0, marcando a taxa de código máxima correspondendo a cada camada estendida como sendo camada L1_K1, camada L2_K2, até camada LM_KM respectivamente, de acordo com as exigências definidas para taxas de codificação de transmissão, sendo a taxa de código da camada LM_KM justamente a taxa de código máxima exigida por um codificador; dividir ainda mais uma camada de taxa de código entre a camada estendida i e a camada estendida i+1 de acordo com o número de bits rejeitados, isto é, subdividir na camada Li+1_1, camada Li+1_2, até camada Li+1_Ki+1 entre a camada Li_Ki e a camada Li+1_Ki+1, de acordo com o número de bits rejeitados.
[022] Além disso, os limites da banda de frequência de codificação é 0-20 kHz, e quando a taxa de código máxima é de 96 kbps, os bits cujo número satisfaz as exigências da taxa de código são enviados à extremidade de decodificação em um método de hierarquia de taxa de código conforme abaixo: agrupar os coeficientes do domínio de frequência de MDCT dentro de 0-6,4 kHz dentre os limites de 0-20 kHz da banda de frequência de codificação dentro de uma camada de núcleo, a taxa de código máxima correspondendo à camada de núcleo sendo de 32 kbps e marcada como camada L0; os limites da banda de frequência de codificação da camada estendida 1 sendo de 0-13,6 kHz, e sendo a sua taxa de código máxima de 64 bps e sendo marcada como camada L1_5; os limites da banda de frequência de codificação da camada estendida 2 sendo de 0-20 kHz e sendo a sua taxa de código máxima de 96 kbps e sendo marcada como camada L2_2; antes de ser enviado à extremidade de decodificação, dividir ainda a camada L1_5 e a camada L2_2 em camada L2_1 correspondendo a 80 kbps e camada L2_2 correspondendo a 96 kbps de acordo com o número de bits rejeitados.
[023] A presente invenção propõe ainda um método de decodificação hierárquica de áudio, que compreende as seguintes etapas: demultiplexar uma corrente de bits enviados por uma extremidade de codificação e decodificar os bits codificados do envelope de amplitude dos coeficientes do domínio de frequência da camada de núcleo para obter um valor de envelope de amplitude de cada sub-banda de codificação da camada de núcleo; alocar bits a cada sub-banda da camada de núcleo de acordo com o valor de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e calcular um valor de envelope de amplitude de um sinal residual da camada de núcleo; decodificar os bits codificados de envelope de amplitude dos coeficientes do domínio de frequência de camada estendida para obter um valor de envelope de amplitude dos coeficientes do domínio de frequência da camada estendida; alocar bits a cada sub-banda de codificação de uma camada estendida de acordo com o valor de envelope de amplitude do sinal residual da camada de núcleo e valor de envelope de amplitude dos coeficientes do domínio de frequência de camada estendida; e decodificar respectivamente os bits codificados dos coeficientes do domínio de frequência de camada de núcleo e os bits codificados de um sinal de codificação de camada estendida de acordo com um número de alocação de bits da camada de núcleo e um número de alocação de bits da camada estendida para obter os coeficientes do domínio de frequência de camada de núcleo e o sinal de codificação de camada estendida, rearranjar o sinal de codificação de camada estendida de acordo com uma ordem de bandas de frequência, e acrescentar os coeficientes do domínio de frequência de camada de núcleo para obter os coeficientes do domínio de frequência de uma largura de banda total, conduzir uma transformada de Cossenos Discreta Modificada inversa (IMDCT) nos coeficientes do domínio de frequência de uma largura de banda total para obter um sinal de áudio emitido.
[024] Além disso, o modo para se calcular o valor de envelope de amplitude do sinal residual é: a etapa de calcular o valor de envelope de amplitude do sinal residual da camada de núcleo compreende: calcular um expoente de quantização do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e implementar um cálculo de diferença em relação a um valor de modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual da camada de núcleo; calcular o valor de envelope de amplitude de cada sub-banda do sinal residual da camada estendida i de acordo com o envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada estendida i; o valor de modificação do expoente de quantização de cada subbanda de codificação sendo maior do que 0 ou igual a 0 e não se reduzindo quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta; e quando o número de alocação de bits de uma sub-banda de codificação da camada de núcleo é 0, o valor de modificação do expoente de quantização sendo 0 e quando o número de alocação de bits da sub-banda de codificação é um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual de camada de núcleo na sub-banda de codificação sendo 0.
[025] Além disso, o valor de modificação do expoente de quantização de uma sub-banda de codificação é obtida de acordo com o número de alocação de bits da camada de núcleo, e quando o número de alocação de bits da subbanda de codificação da camada de núcleo é 0, 1, 1,5, 2, 2,5, 3, 3,5, 4, 4,5, 5, 6, 7 ou 8 respectivamente, o valor de modificação do expoente de quantização que corresponde à sub-banda de codificação é 0, 1, 2, 3, 4, 5, 5, 6, 7, 7, 9, 10 ou 12 respectivamente;
[026] Além disso, a etapa de se obter os coeficientes do domínio de frequência de camada de núcleo e o sinal de codificação de camada estendida compreende: decodificar, quantizar inversamente e normalizar inversamente os bits codificados dos coeficientes do domínio de frequência da camada de núcleo de acordo com o número de alocação de bits, valor de envelope de amplitude de quantização e informação secundária de cada subbanda de codificação da camada de núcleo para se obter os coeficientes do domínio de frequência de camada de núcleo; e decodificar, quantizar inversamente e normalizar inversamente os bitss codificados do sinal de codificação de camada estendida de acordo com o número de alocação de bits de cada sub-banda de codificação da camada estendida, o valor de envelope de amplitude de quantização e informações secundárias do sinal de codificação de camada estendida para obter o sinal de codificação de camada estendida.
[027] Além disso, na etapa de decodificação dos bits codificados do sinal de codificação de camada estendida, os bits codificados do sinal de codificação de camada estendida são decodificados na seguinte ordem: em diferentes camadas estendidas, a ordem para a decodificação das diversas camadas é: decodificar em primeiro lugar os bits codificados de cada sub-banda de codificação e do envelope de amplitude de uma camada estendida inferior com um número de série menor de camada estendida e em seguida decodificar os bits codificados de cada sub-banda de codificação e do envelope de amplitude de uma camada estendida superior com um número de série de camada estendida maior, sendo o número de bits decodificados calculado durante a decodificação e a decodificação é terminada quando o número de bits decodificados satisfaz as exigências no número total de bits; em uma camada estendida idêntica, a ordem para a decodificação de diversas sub-bandas é determinada por um valor inicial da importância de cada sub-banda de codificação, uma sub-banda de codificação com uma importância maior é, de preferência, decodificada, e se houver duas sub-bandas de codificação com a mesma importância, então é decodificada, de preferência, uma frequência de sub-banda de codificação mais baixa, o número de bits decodificados é calculado durante a decodificação e a decodificação é terminada quando o número de bits decodificados satisfaz as exigências sobre o número total de bits.
[028] Além disso, quando uma taxa de código à qual os bits são enviados de uma extremidade de codificação a uma extremidade de decodificação for 64 kbps, diferentes números de bits são interceptados na extremidade de decodificação para serem decodificados e a taxa de decodificação pode ser de 36 kbps, 40 kbps, 48 kbps, 56 kbps ou 64 kbps.
[029] Quando uma taxa de código à qual os bits são enviados de uma extremidade de codificação a uma extremidade de decodificação for de 96 kbps, são interceptados números diferentes de bits na extremidade de decodificação para serem decodificados e a taxa de decodificação pode ser 80 kbps ou 96 kbps.
[030] A presente invenção propõe ainda um sistema de codificação de áudio hierárquico, que compreende: uma unidade de Transformada Discreta de Cossenos Modificada (MDCT), uma unidade de cálculo do envelope de amplitude, uma unidade de quantização e codificação de envelope de amplitude, uma unidade de alocação de bits da camada de núcleo, uma unidade de quantização e codificação de vetores de coeficientes do domínio de frequência da camada de núcleo, e um multiplexador de corrente de bits; o sistema compreende ainda: uma unidade de geração de sinal de codificação de camada estendida, uma unidade de geração de envelope de amplitude de sinal residual, uma unidade de alocação de bits de camada estendida, e uma unidade de quantização e codificação de vetor de sinal de codificação de camada estendida; em que: a unidade de MDCT é configurada para efetuar a Transformada Discreta de Cossenos Modificada para sinal de áudio de entrada para gerar coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência de camada estendida; a unidade de cálculo de envelope de amplitude é configurada para dividir uma parte a ser codificada nos coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência de camada estendida em uma sub-banda de codificação de coeficientes do domínio de frequência de camada de núcleo e em uma sub-banda de codificação de coeficientes do domínio de frequência de camada estendida e calcular um valor de envelope de amplitude de cada subbanda de codificação; a unidade de quantização e codificação de envelope de amplitude é configurada para quantizar e codificar os valores de envelope de amplitude da sub-banda de codificação de coeficientes do domínio de frequência de camada de núcleo e a sub-banda de codificação de coeficientes do domínio de frequência de camada estendida para gerar um expoente de quantização de envelope de amplitude e bits codificados de envelope de amplitude de cada uma das duas subbandas, a de codificação de coeficientes do domínio de frequência de camada de núcleo e a de codificação de coeficientes do domínio de frequência de camada estendida; a unidade de alocação de bits de camada de núcleo é configurada para alocar bits à camada de núcleo para obter um número de alocação de bits de cada sub-banda de codificação da camada de núcleo; a unidade de quantização e codificação de vetores de coeficientes do domínio de frequência de camada de núcleo é configurada para normalizar, quantizar e codificar quanto ao vetor os coeficientes do domínio de frequência de cada sub-banda de codificação da camada de núcleo usando um valor de quantização de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada de núcleo reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo para obter bits codificados dos coeficientes do domínio de frequência de camada de núcleo; a unidade geradora de sinal de codificação de camada estendida é configurada para gerar um sinal residual e obter um sinal de codificação de camada estendida composto pelo sinal residual e pelos coeficientes do domínio de frequência de camada estendida; a unidade geradora de envelope de amplitude de sinal residual é configurada para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de acordo com um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e um número de alocação de bits de uma sub-banda de codificação correspondente; a unidade de alocação de bits de camada estendida é configurada para alocar bits a uma camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual e com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida para obter um número de alocação de bits de cada sub-banda de codificação do sinal de codificação de camada estendida; a unidade de quantização e codificação de vetor de sinal de codificação de camada estendida é configurada para normalizar, quantizar e codificar por vetor o sinal de codificação de cada sub-banda de codificação da camada estendida usando o valor de envelope de amplitude de quantização e o número de alocação de bits de cada subbanda de codificação da camada estendida reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada subbanda de codificação da camada estendida para obter bits codificados do sinal de codificação de camada estendida; o multiplexador de corrente de bits é configurado para empacotar os bits de informações secundárias da camada de núcleo, os bits codificados do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, os bits codificados dos coeficientes do domínio de frequência de camada de núcleo, os bits de informações secundárias da camada estendida, os bits codificados de cada envelope de amplitude dos coeficientes do domínio de frequência de camada estendida, e os bits codificados do sinal de codificação de camada estendida.
[031] Além disso, a unidade geradora de sinal de codificação de camada estendida compreende ainda uma unidade geradora de sinal residual e uma unidade sintetizadora do sinal de codificação de camada estendida; a unidade geradora de sinal residual é configurada para quantizar inversamente um valor quantizado dos coeficientes do domínio de frequência de camada de núcleo, para implementar um cálculo de diferença em relação ao coeficiente do domínio de frequência da camada de núcleo para obter o sinal residual da camada de núcleo; a unidade sintetizadora de sinal de codificação de camada estendida é configurada para sintetizar o sinal residual de camada de núcleo e o coeficiente do domínio de frequência de camada estendida em uma ordem de bandas de frequência para obter o sinal de codificação de camada estendida.
[032] Além disso, a unidade geradora de envelope de amplitude de sinal residual compreende ainda uma unidade de obtenção do valor de modificação do expoente de quantização e uma unidade calculadora do expoente de quantização de envelope de amplitude de sinal residual; a unidade de obtenção do valor de modificação do expoente de quantização é configurada para calcular o valor de modificação do expoente de quantização de cada sub-banda de codificação do sinal residual de acordo com o número de alocação de bits de cada subbanda de codificação da camada de núcleo, em que, o valor de modificação do expoente de quantização de cada sub-banda de codificação é superior ou igual a 0, e não diminui quando o número de alocação de bits da sub-banda de codificação correspondentes da camada de núcleo aumenta; quando o número de alocação de bits de uma sub-banda de codificação da camada de núcleo for 0, o valor de modificação do expoente de quantização será 0, e quando o número de alocação de bits da sub-banda de codificação da camada de núcleo for um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual da camada de núcleo na sub-banda de codificação será 0;
[033] A unidade de cálculo do expoente de quantização de envelope de amplitude de sinal residual é configurada para implementar um cálculo de diferença entre um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e um valor de modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter o expoente de quantização de envelope de amplitude de cada subbanda de codificação do sinal residual de camada de núcleo.
[034] Além disso, o multiplexador de corrente de bits é configurado para lançar os bits codificados do sinal de codificação de camada estendida na corrente de código de acordo com um valor inicial de importância de cada sub-banda de codificação em uma ordem descendente, e para as sub-banda de codificação com a mesma importância, lançar, de preferência, os bits codificados de uma sub-banda de codificação de frequência mais baixa na corrente de código.
[035] A presente invenção propõe ainda um sistema de decodificação de áudio hierárquico que compreende: um demultiplexador de corrente de bits, uma unidade de decodificação de envelope de amplitude de camada de núcleo, uma unidade de alocação de bits de camada de núcleo, e uma unidade de decodificação e quantização inversa de camada de núcleo; o sistema compreende ainda: uma unidade de decodificação de envelope de amplitude de camada estendida, uma unidade geradora de envelope de amplitude de sinal residual de camada de núcleo, uma unidade de alocação de bits de camada estendida, uma unidade de decodificação e quantização inversa do sinal de codificação de camada estendida, uma unidade geradora de coeficiente do domínio de frequência, uma unidade de preenchimento com ruído e uma unidade de Transformada Discreta de Cossenos Modificada inversa (IMDCT); em que: a unidade de decodificação de envelope de amplitude de camada de núcleo é configurada para decodificar bits codificados de envelope de amplitude de sub-bandas de codificação de uma camada de núcleo emitidos pelo demultiplexador de corrente de bits para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo; a unidade de alocação de bits de camada de núcleo é configurada para alocar bits à camada de núcleo para obter um número de alocação de bits de cada sub-banda de codificação da camada de núcleo; a unidade de decodificação e quantização inversa da camada de núcleo é configurada para obter por meio do cálculo de um valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada de núcleo de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e decodificar, quantizar inversamente e normalizar inversamente os bits codificados de coeficientes do domínio de frequência de camada de núcleo emitidos pelo demultiplexador de corrente de bits usando o número de alocação de bits e o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada de núcleo para obter os coeficientes do domínio de frequência de camada de núcleo; a unidade de decodificação de envelope de amplitude de camada estendida é configurada para decodificar os bits codificados de envelope de amplitude dos coeficientes do domínio de frequência de camada de núcleo emitidos pelo demultiplexador de corrente de bits para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada de núcleo; a unidade geradora de envelope de amplitude de sinal residual de camada de núcleo é configurada para obter por cálculo um expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo do número de alocação de bits de uma sub-banda de codificação correspondente; a unidade de alocação de bits de camada estendida é configurada para alocar bits a uma camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual e com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida para obter um número de alocação de bits de cada sub-banda de codificação do sinal de codificação de camada estendida; a unidade de decodificação e quantização inversa do sinal de codificação de camada estendida é configurada para obter por cálculo um valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida, e para decodificar, quantizar inversamente e normalizar inversamente os bits codificados do sinal de codificação de camada estendida emitidos pelo demultiplexador de corrente de bits usando o número de alocação de bits e o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida para obter o sinal de codificação da camada estendida; a unidade geradora de coeficiente do domínio de frequência é configurada para rearranjar o sinal de codificação de camada estendida emitido pela unidade de decodificação e quantização inversa de sinal de codificação de camada estendida de acordo com a ordem das bandas de frequência, e para em seguida efetuar o cálculo da soma no tocante aos coeficientes do domínio de frequência de camada de núcleo emitidos pela unidade de decodificação e quantização inversa do sinal de codificação de camada de núcleo para obter um valor de saída de coeficiente do domínio de frequência; a unidade de preenchimento com ruído é configurada para conduzir o preenchimento com ruído das sub-bandas de codificação às quais nenhum bit codificado é alocado durante o processo de codificação; a unidade IMDCT é configurada para efetuar a IMDCT em todos os coeficientes do domínio de frequência para os quais foi conduzido o preenchimento com ruído para ser obtido um sinal de áudio de saída.
[036] Além disso, a unidade geradora de envelope de amplitude de sinal residual de camada de núcleo compreende ainda uma unidade de obtenção do valor de modificação do expoente de quantização e uma unidade de cálculo do expoente de quantização de envelope de amplitude de sinal residual; a unidade de obtenção do valor de modificação do expoente de quantização é configurada para calcular o valor de modificação do expoente de quantização de cada sub-banda de codificação do sinal residual de acordo com o número de alocação de bits de cada subbanda de codificação da camada de núcleo, e fazer o ajuste de acordo com um valor absoluto do coeficiente do domínio de frequência de uma sub-banda de codificação correspondente, em que, o valor de modificação do expoente de quantização de cada sub-banda de codificação é superior ou igual a 0, e não diminui quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta, e se o número de alocação de bits de uma sub-banda de codificação da camada de núcleo for 0, o valor de modificação do expoente de quantização será 0 e se o número de alocação de bits da sub-banda de codificação da camada de núcleo for um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual na sub-banda de codificação será 0; a unidade de cálculo do expoente de quantização de envelope de amplitude de sinal residual é configurada para conduzir um cálculo de diferença entre o expoente de quantização de envelope de amplitude de cada sub-banda de codificação e o valor de modificação do expoente de quantização da sub-banda de codificação correspondente, para obter o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo.
[037] Além disso, a unidade de decodificação e quantização inversa de sinal de codificação de camada estendida é configurada de modo tal, que a ordem de decodificação das diversas sub-bandas do sinal de codificação de camada estendida é determinada por valor inicial de importância de cada sub-banda de codificação, sendo decodificada preferencialmente uma sub-banda de codificação com uma importância maior e se houver duas sub-bandas de codificação com a mesma importância então será preferencialmente decodificada a sub-banda de codificação com a frequência mais baixa, sendo o numero de bits codificados calculado durante a decodificação e sendo a decodificação terminada quando o numero de bits codificados satisfaz as exigências sobre o número total de bits.
[038] Finalmente, na presente invenção, o método idêntico para a divisão em sub-bandas e de alocação de bits é aplicado na camada de núcleo e na camada estendida, as informações do envelope de amplitude da camada estendida são calculadas de acordo com as informações de envelope de amplitude da camada de núcleo, e as características de distribuição dos sinais propriamente ditos é levada em total consideração na alocação de bits tanto da camada de núcleo como da camada estendida, de modo tal, que a camada de núcleo e a camada estendida estão intimamente relacionadas e a corrente de código da camada estendida não compreende as informações de envelope de amplitude do sinal residual, aumentando assim a eficiência da codificação e da decodificação hierárquicas de áudio e aumentando ao mesmo temo a relação de utilização entre os códigos.
[039] A Figura 1 é um fluxograma de um método hierárquico melhorado de codificação de áudio, de acordo com o Exemplo um da presente invenção; a Figura 2 é um fluxograma de um método para a modificação da alocação de bits depois da quantização por vetor de acordo com um exemplo da presente invenção; a Figura 3 ilustra a estrutura do sistema hierárquico melhorado de codificação áudio de acordo com o Exemplo um da presente invenção; a Figura 3a ilustra uma corrente de código da codificação hierárquica de acordo com o Exemplo um da presente invenção; a Figura 4 é um fluxograma de um método aperfeiçoado de decodificação hierárquica de áudio de acordo com o Exemplo um da presente invenção; a Figura 5 ilustra a estrutura do sistema aperfeiçoado de decodificação hierárquica de áudio de acordo com o Exemplo dois da presente invenção; a Figura 6 é um fluxograma de um método aperfeiçoado de codificação hierárquica de áudio de extensão de acordo com o Exemplo um da presente invenção; a Figura 6a ilustra uma corrente de código da codificação hierárquica de acordo com o Exemplo dois da presente invenção; a Figura 7 ilustra a estrutura do sistema de codificação hierárquica de áudio de extensão de acordo com o Exemplo dois da presente invenção; a Figura 8 é um fluxograma de um método de decodificação hierárquica de áudio de extensão de acordo com o Exemplo dois da presente invenção; a Figura 9 ilustra a estrutura do sistema de decodificação hierárquica de áudio de extensão de acordo com o Exemplo dois da presente invenção; a figura 10 ilustra a relação entre a divisão de camadas dentro dos limites de bandas de frequência e a divisão de camadas de acordo com a taxa de código, de acordo com a presente invenção.
[040] O conceito de camada de núcleo da presente invenção visa compensar o ruído quantizado na camada de núcleo, usar os mesmos métodos para a divisão em sub-bandas e a alocação de bits na camada de núcleo e na camada estendida e calcular as informações de envelope de amplitude do sinal residual da camada de núcleo de acordo com as informações de envelope de amplitude da camada de núcleo, que podem melhorar a qualidade de áudio da camada de núcleo sem transmitir as informações do envelope de amplitude do sinal residual na corrente de código da camada estendida.
[041] A presente invenção será descrita abaixo em detalhes, fazendo-se referência aos desenhos e aos exemplos.
[042] A Figura 1 é um fluxograma de um método aperfeiçoado de codificação hierárquica de áudio de acordo com o Exemplo um da presente invenção. Neste exemplo, o método de codificação hierárquica de áudio da presente invenção será descrito tomando-se uma corrente de áudio com um comprimento de matriz de 20 ms e uma taxa de tomada de amostras de 32 kHz como um exemplo. O método da presente invenção também se pode aplicar nas condições de outros comprimentos de matriz e outras taxas de tomada de amostras. Conforme mostrado na Figura 1, o método compreende:
[043] Etapa 101: MDCT (Transformada Discreta de Cossenos Modificada) é conduzida na corrente de áudio com um comprimento de matriz de 20 ms e uma taxa de tomada de amostras de 32 kHz para obter os coeficientes do domínio de frequência em N pontos de tomada de amostras do domínio de frequência.
[044] Esta etapa pode ser especificamente implementada do seguinte modo: quando um sinal x(n) da tomada de amostras do domínio do tempo de N pontos do matriz atual e o sinal xold(n) de tomada de amostras do domínio do tempo de N pontos da última matriz constituírem um sinal x (n) de tomada de amostras do domínio do tempo de 2N pontos, o sinal de tomada de amostras de domínio de tempo de 2N pontos poderá ser representado pela seguinte fórmula:
[045] A MDCT é efetuada em x(n), obtendo-se os seguintes coeficientes do domínio de frequência: em que, w(n) representa uma função de janela de seno, cuja expressão é:
[046] Além disso, quando o comprimento de matriz é de 20 ms e a taxa de tomada de amostras é de 32 kHz, N = 640 (o N correspondente pode também ser calculado de acordo com outros comprimentos de matrizes e taxas de tomada de amostras).
[047] Etapa 102: os coeficientes do domínio de frequência de N pontos são divididos em diversas sub-bandas igualmente ou desigualmente, e neste exemplo, as sub-bandas são divididas desigualmente, sendo então calculado o envelope de amplitude do domínio de frequência (a que se refere como envelope de amplitude para abreviar) de cada sub-banda.
[048] Esta etapa pode ser implementada através das seguintes sub-etapas: Etapa 102a: os coeficientes do domínio de frequência dentro dos limites de uma banda de frequência que devem ser codificados são divididos em L sub-bandas (que podem ser denominadas sub-banda de codificação); neste exemplo, os limites da banda de frequência a ser codificada, são de 0-13,6 kHz e esta faixa pode ser dividida em subbandas de acordo com as características perceptivas auditivas humanas desigualmente. A Tabela 1 dá um modo de divisão específico.
[049] Na Tabela 1, os coeficientes do domínio de frequência dentro dos limites da banda de frequência de 0-13,6kHz são divididos em 28 sub-bandas de codificação, isto é L = 28; os coeficientes do domínio de frequência acima de 13,6kHz são ajustados para serem 0s.
[050] Neste exemplo, a faixa entre os limites do domínio de frequência da camada de núcleo é também dividida. As sub-bandas do No. 0-15 na Tabela 1 são selecionadas como as sub-bandas da camada de núcleo, e há L_core = 16 sub-bandas ao todo. Os limites da banda de frequência da camada de núcleo são de 0-6,4 kHz. Tabela 1
[051] Etapa 102b: o envelope de amplitude de cada sub-banda de codificação é calculado de acordo com a seguinte fórmula: em que LIndex(j) e HIndex(j) representam o ponto de partida de frequência e o ponto final de frequência da sub-banda de codificação de ordem j, respectivamente, e os seus valores específicos são conforme apresentado na Tabela 1.
[052] Etapa 103: o valor de envelope de amplitude de cada sub-banda de codificação é quantizado e codificado para se obter o expoente de quantização do envelope de amplitude e os bits codificados do envelope de amplitude, e os bits codificados do envelope de amplitude precisam ser transmitidos ao multiplexador de corrente de bits (MUX).
[053] O envelope de amplitude de cada sub-banda de codificação é quantizado usando-se a seguinte fórmula (5) para se obter o expoente de quantização do envelope de amplitude de cada sub-banda de codificação, isto é, o valor de saída do quantizador: em que representa arredondado para baixo, Thq(0) é o expoente de quantização de envelope de amplitude da primeira sub-banda de codificação, cujos limites se encontram dentro de [-5, 34], isto é, quando
[054] O envelope de amplitude de quantização restabelecido de acordo com o expoente de quantização é
[055] O expoente de quantização de envelope de amplitude da primeira subbanda de codificação está codificado com 6 bits, isto é, 6 bits são consumidos.
[056] Os valores de operações diferenciais entre os expoentes de quantização de envelope de amplitude de diversas sub-bandas de codificação são calculados de acordo com a seguinte fórmula:
[057] O envelope de amplitude pode ser modificado do seguinte modo para assegurar que os limites de ΔThq (j) se encontram dentro de [-5, 16]: se ΔThq (j) <-15, então se Δ Th (j) > 16, então
[058] A codificação de Huffman é conduzida em ΔThq(j), j = 0,...,L-2 , e é calculado o número de bits consumidos neste momento (denominados bits codificados de Huffman). Se o número de bits codificados de Huffman for superior ou igual ao número de bits permanentemente alocados (que é superior a (L-1) x 5 neste exemplo), ΔTh (j), j = 0,...,L-2 não é codificado no modo de codificação de Huffman, e o bit de sinalizador de codificação de Huffman Flag_huff_rms é ajustado para ser 0; caso contrário, ΔThq(j),j=0,...,L-2 é codificado usando-se a codificação de Huffman e o bit de sinalizador de codificação de Huffman Flag_huff_rms é ajustado para ser 1. Os bits codificados do expoente de quantização de envelope de amplitude (isto é, os bits codificados do valor diferencial de envelope de amplitude) e o bit de sinalizador de codificação de Huffman precisa ser transmitido ao MUX.
[059] Etapa 104: o valor inicial de importância de cada sub-banda de codificação da camada de núcleo é calculado de acordo com a teoria de distorção da taxa de código das informações de envelope de amplitude da subbanda de codificação, e a alocação de bits para a camada de núcleo é conduzido de acordo com a importância de cada sub-banda de codificação.
[060] Esta etapa pode ser implementada com as seguintes sub-etapas: Etapa 104a: é calculado um valor médio de consumo de bits de um único coeficiente do domínio de frequência da camada de núcleo: a partir do número total de bits que pode ser fornecido por um comprimento de matriz de 20 ms bits_available, são deduzidos o número de bits para a codificação de camada de núcleo bits_available_ core, do número de bits consumidos pelas informações secundárias da camada de núcleo bit_sides_core, e do número de bits consumidos pelo expoente de quantização de envelope de amplitude da sub-banda de codificação da camada de núcleo bits_Th_core, para ser obtido o número de bits que sobraram bits_left_core que pode ser usado para a codificação dos coeficientes do domínio de frequência da camada de núcleo, isto é: bits_left_core=bits_available_core.bit_sides_core.bits_Th_core (7)
[061] As informações secundárias compreendem sinalizadores de codificação de Huffman Flag_huff_rms, Flag_huff_PLVQ e os bits do número de iterações count. Flag_huff_rms é usado para marcar se a codificação de Huffman é aplicada aos expoentes de quantização de envelope de amplitude das subbandas de codificação da camada de núcleo e da camada estendida, Flag_huff_PLVQ_core é usado para marcar se a codificação de Huffman é usada quando a codificação por vetor é conduzida nos coeficientes do domínio de frequência, e o número de iterações count é usado para indicar o número de iterações durante a modificação da alocação de bits (veja a descrição nas etapas subsequentes para mais detalhes).
[062] É calculado o valor médio de consumo de bits R_core de um único coeficiente do domínio de frequência:em que, L _ core é o número de sub-banda de codificação da camada de núcleo.
[063] Etapa 104b: o valor de bit ótimo nas condições de ganho máximo de relação sinal para ruído da quantização é calculado de acordo com a teoria de distorção de taxa de código: o grau de distorção de taxa de código baseado na variável separada aleatória de distribuição Gaussiana é otimizado através do método Lagrange, e o valor de bit ótimo nas condições do ganho máximo da relação sinal para ruído de quantização de cada sub-banda de codificação pode ser obtido através do seguinte cálculo: (9) em que, (10)e (11)
[064] Etapa 104c: é calculado o valor inicial de importância de cada sub-banda de codificação durante a alocação de bits: o valor inicial de importância de cada sub-banda de codificação para o controle de alocação de bits na alocação de bits prática pode ser obtido usando-se o valor de bit ótimo e o fator de proporção que se conforma às características perceptivas auditivas humanas:(12) em que, α é um fator de proporção, que é associado com a taxa de código e pode ser obtido através de estatística e de análise e é geralmente 0<α <1 e é 0.4 neste exemplo; rk (j) indica a importância de sub-banda de codificação de ordem j durante a alocação de bits.
[065] Etapa 104d: a alocação de bits para a camada de núcleo é conduzida de acordo com a importância de cada sub-banda de codificação; a descrição específica é a seguinte: em primeiro lugar é encontrada a sub-banda de codificação com o valor máximo dentre diversos rk(j) e o número de série da sub-banda de codificação é pressuposto como sendo jk e em seguida o número de bits codificados region_bit(j ) de cada coeficiente do domínio de frequência na sub-banda de codificação é aumentado enquanto é diminuída a importância da sub-banda de codificação; simultaneamente é calculado o número total de bits bit_band_used(j ) consumidos para a codificação da sub-banda; finalmente, é calculada a soma dos números de bits consumidos por todas as sub-bandas de codificação, sum(bit- _band_used (j)), j=0,...,L_core-1, o procedimento acima é repetido até que a soma do número de bits consumidos corresponda ao valor máximo na condição de limite de bits disponíveis.
[066] O método de alocação de bits nesta etapa pode ser representado pelos seguintes pseudocódigos:
se bit_used_all < bits_left_core - 24, efetuar de novo e encontrar jk novamente em diversas sub-bandas de codificação, e calcular o número de alocação de bits (ou denominado número de bits codificados) de modo circular; em que 24 é o valor máximo da largura da sub-banda de codificação.
[067] Ou então, finalizar a circulação, calcular o número de alocação de bits e emitir o número de alocação de bits neste momento.
[068] Finalmente, de acordo com a importância da sub-banda, os bits que sobraram em número inferior a 24 são alocados à sub-banda de codificação que satisfazem as exigências com base no seguinte princípio: 0,5 bit é, de preferência, alocado a cada coeficiente do domínio de frequência na sub-banda de codificação com a alocação de bits de 1, e simultaneamente a importância da sub-banda de codificação é reduzida de 0,5; caso contrário 1 bit é alocado a cada coeficiente do domínio de frequência na sub-banda de codificação com a alocação de bits de 0, e simultaneamente a importância da sub-banda de codificação é diminuída de 1 até bit_leftbit_used_all<4, a alocação de bits termina.
[069] O limite do valor do limiar de classificação é superior ou igual a 2e inferior ou igual a 8, e neste exemplo o seu valor pode ser 5.
[070] Em que, MaxBit é o número máximo de bits que pode ser alocado a um único coeficiente do domínio de frequência em uma sub-banda de codificação, cuja unidade é bit/coeficiente do domínio de frequência. Neste exemplo, MaxBit=9. Este valor pode ser ajustado de acordo com a taxa de código do decodificador. region_bit(j) é o número de bits alocados a um único coeficiente do domínio de frequência na sub-banda de codificação de ordem j, isto é, o número de bits codificados de um único coeficiente do domínio de frequência na sub-banda de codificação.
[071] Além disso, nesta etapa, pode ser pressuposto como o valor inicial da importância de alocação de bits de cada sub-banda de codificação para alocação de bits da camada de núcleo, j=0,...,L_core - 1; μ>0.
[072] Etapa 105: a circulação de normalização é conduzida em cada coeficiente do domínio de frequência na sub-banda de codificação de acordo com o valor de envelope de amplitude de quantização reconstruído usando-se o expoente de quantização de cada sub-banda da camada de núcleo, sendo então os coeficientes do domínio de frequência normalizados agrupados para formar diversos vetores; o processamento de normalização é efetuado em todos os coeficientes do domínio de frequência Xj da sub-banda de codificação Thq(j)/2 usando-se o envelope de amplitude de quantização da sub banda de codificação j: os 8 coeficientes sucessivos na sub-banda de codificação são agrupados para constituir um vetor octadimensional. De acordo com a divisão das sub-bandas de codificação na Tabela 1, os coeficientes na sub-banda de codificação j podem ser agrupados com precisão para constituir vetores octadimensionais Lattice_D8(j). Cada vetor normalizado e agrupado em 8 dimensões a ser quantizado pode ser m representado como Yjm, em que m indica a posição do vetor octadimensional na sub-banda de codificação e ele varia de 0 a Lattice_D8(j)-1.
[073] Etapa 106: a magnitude do número de bits alocados à sub-banda de codificação j, region_bit(j), é julgada, e se o número de bits alocados region_bit(j) for inferior ao limiar de classificação são executadas as etapas 107 e 109, isto é, o vetor a ser quantizado na sub-banda de codificação é quantizado e codificado usando-se a quantização de vetor de retículo de pirâmide; se o número de bits alocados region_bit(j) for superior ou igual ao limiar de classificação são executadas as etapas 108 e 110, isto é, o vetor a ser quantizado na sub-banda de codificação é quantizado e codificado usando-se quantização de vetor de retículo de esfera; o valor de limiar neste exemplo adota 5 bits.
[074] Etapa 107: a sub-banda de codificação de baixo número de bits é quantizada usando-se quantização de vetor de retículo de pirâmide, sendo que neste caso, o número de bits alocados à sub-banda j satisfaz: 1<=region_bit(j)<5.
[075] A presente invenção adota o método de quantidade de vetor de retículo octadimensional baseado no ponto de retículo D8, em que o ponto de retículo D8 é definido do seguinte modo: em que, Z8 representa o espaço integral octadimensional. O método para o mapeamento (isto é, a quantização) de um vetor octadimensional ao ponto de retículo D8 é descrito abaixo:
[076] Pressupõe-se que x seja qualquer numero real, f(x) indica a efetuação de quantização de arredondamento do número inteiro mais máximo de x entre os dois números inteiros adjacentes a x, w(x), indica a efetuação de quantização de arredondamento do número inteiro mais distante de x entre os dois números inteiros adjacentes a x. Para qualquer vetor X = (x, x2,..., x8) e R8, pode também ser definido que f(X) =(f(x ), f(x ),..., f(x )) . O subscrito mínimo dentre os componentes com o valor absoluto maior do erro de quantização de arredondamento é selecionado em f(X) e é marcado como k, e é, portanto, definido que g(X) =(f(x ), f(x ),...w(x ),..., f(x )) , então um e somente um de f(X) e de g(X) é um valor do ponto D8 de retículo sendo neste caso o valor de quantização do ponto D8 de retículo emitido pelo quantizador:
[077] O método para a quantização do vetor a ser quantizado ao ponto D8 de retículo das etapas específicas para solucionar o expoente do ponto D8 de retículo é o seguinte: Etapa 107a: é regulada a energia do vetor a ser quantizado;
[078] Ele deve efetuar a regulação da energia no vetor a ser quantizado antes da quantização. De acordo com o número region_bit(j), de bits alocados à subbanda de codificação j em que o vetor a ser quantizado está localizado, o número de série do livro de código (indicador [index]) que corresponde ao número de bits e o fator de escalamento de energia (scale) se encontram na Tabela 2; em seguida é conduzida a regulação da energia no vetor a ser quantizado de acordo com a seguinte fórmula: em que representa o vetor a ser quantizado de ordem m octadimensional normalizado na sub-banda de codificação j, representa o vetor octadimensional depois de se ter efetuado a Tabela 2 Relação de correspondência entre o número de bits na quantização de vetor de retículo de pirâmide, número de série do livro de código, fator de escalamento de energia, e o raio máximo de energia de superfície de pirâmide
[079] Etapa 107b: A quantização do ponto do retículo é conduzida no vetor regulado; o vetor octadimensional com a energia regulada é quantizado no ponto D8do retículo
em que, representa um operador de quantização para o mapeamento de um vetor octadimensional determinado a um ponto D8 do retículo.
[080] Etapa 107c: a energia de é truncada de acordo com a energia da superfície da pirâmide do ponto D8 do retículo a energia do ponto D8 do retículoé calculada e é comparada com o raio máximo de energia de superfície de pirâmide LargeK(index) no livro de código de codificação. Se ele não for maior do que o raio máximo da energia de superfície de pirâmide, o indicador (index) do ponto do retículo no livro de código é calculado; caso contrário, o truncamento da energia é efetuado no vetor a ser quantizado regulado ,sae da sub-banda de codificação, até a energia do ponto de retículo quantizado do vetor a ser quantizado com a energia truncada não ser maior do que o raio máximo de energia de superfície de pirâmide; neste momento, uma pequena energia de si mesma é continuamente acrescentada ao vetor a ser quantizado com a energia truncada, até que a energia do ponto D8do retículo, ao qual ele é quantizado excede o raio máximo de energia de superfície de pirâmide; o último ponto D8 de retículo cuja energia não excede o raio máximo de energia de superfície de pirâmide é tomado como o valor de quantização do vetor a ser quantizado. O processo específico pode ser descrito usando-se os seguintes pseudocódigos: calcular a energia de superfície de pirâmide isto é, calcular a soma de diversos valores absolutos do componente de ordem m na subbanda de codificação j,
o neste momento é o último ponto D8 de retículo cuja energia não excede o raio máximo de energia de superfície de pirâmide, e temp _ K é a energia do ponto de retículo.
[082] O indicador do ponto D8 do retículo no livro de código é obtido calculando-se de acordo com as seguintes etapas. As etapas específicas são as seguintes: Etapa 1: o ponto do retículo em cada superfície de pirâmide é rotulado separadamente de acordo com a magnitude da energia de superfície de pirâmide.
[083] Para uma trama inteira de ponto de retículo ZL sendo a dimensão L, a superfície de pirâmide cujo raio de energia é K é definido deste modo:N(L,K) é marcado como o número de pontos de retículo em S(L, K) , e para o retículo de números inteiros ZL , N(L,K) tem a seguinte relação de recorrência:
[084] Para o ponto de retículo de números inteiros na superfície de pirâmide cujo raio de energia é K,ele é rotulado com um determinado valor b em [0,1,^.,N(L,K)-1], e b é denominado o rótulo do ponto de retículo. As etapas para se resolver o rótulo b são as seguintes: Etapa 1.1: seja b=0, i=1, k=K, l=L, e calcular N(m,n), (m<=L,n<=K) de acordo com a fórmula de recorrência acima. Fica definido que: Etapa 1.2: se yi=0, então b=b+0; Etapa 1.3: , se k=0 neste momento, então termina a busca, e b é o rótulo de Y, caso contrário, ele procede para a etapa 1.2). Etapa 2: os pontos de retículo em todas as superfícies da pirâmide são rotulados uniformemente.
[085] O rótulo de cada ponto de retículo em todas as superfícies de pirâmide é calculado de acordo com o número de pontos de retículo em cada superfície de pirâmide e o rótulo de cada ponto de retículo na sua própria superfície de pirâmide:em que, kk é um número par, e o index_b(j,m) neste momento é ym exatamente o indicador do ponto D8 de retículo no livro de código, isto é, o indicador do vetor de8 dimensões de ordem m na sub-banda de codificação j.
[086] Etapa 107e: as etapas 107a-107d são repetidas até que sejam gerados os indicadores dos vetores octadimensionais de todas as sub-bandas de codificação cujos bits codificados são maiores do que 0; deve se ir para a etapa 109.
[087] Etapa 108: as sub-bandas de codificação de alto número de bits são quantizadas usando-se a quantização de vetor de retículo de esfera, e neste momento o número de bits alocados à sub-banda j satisfaz: 5<=region_bit(j) <=9; neste caso, é também adotada quantização de vetor de retículo octadimensional baseada no retículo de D8.
[088] Etapa 108a: a regulação de energia abaixo é conduzida no vetor a ser quantizado normalizado de ordem m Yjm da sub-banda de codificação de acordo com o número de bits, region_bit(j), alocados a um único coeficiente do domínio de frequência na sub-banda de codificação j:
representa o fator de escalamento de energia quando o número de alocação de bits de um único coeficiente do domínio de frequência na sub-banda de codificação é region_bit(j) , e sua relação de correspondência pode ser encontrada na Tabela 3. Tabela 3 Relação de correspondência entre o número de alocação de bits da quantização de vetor de retículo de esfera e o fator de escalamento de energia
[089] Etapa 108b: é gerado o vetor do indicador do ponto D8 de retículo.
[090] O vetor a ser quantizado de ordem mdepois do escalamento da energia ter sido efetuado na sub-banda de codificação j, é mapeado no ponto D8 do retículo
[091] Avalia-se se é um vetor zero, isto é, se todos os 8j seus componentes são zero. Se tal for o caso, diz-se que a condição de vetor zero foi satisfeita, caso contrário, diz-se que a condição de vetor zero não foi satisfeita.
[092] Se a condição de vetor zero tiver sido satisfeita, o vetor indicador pode ser obtido de acordo com a seguinte fórmula geradora de vetor de expoente:o vetor de indicador k do ponto D8 do retículo Yjm é emitido neste momento, sendo G a matriz geratriz do ponto D8 de retículo e tem o seguinte formato:
[093] Se a condição de vetor zero não tiver sido satisfeita, o valor do vetor é dividido por 2, até a condição de vetor zero ter sido satisfeita; o valor múltiplo pequeno w de propriamente dito recebe uma reserva, sendo então o vetor reduzido acrescentado com o valor múltiplo pequeno de reserva w, e é quantizado no ponto D8 do retículo, e se avalia se foi satisfeita a condição de vetor zero, se tal não for o caso o vetor indicador k do último ponto D8 do retículo que satisfaz a condição de vetor zero é obtida de continua a ser acrescentado com valor w múltiplo pequeno de reserva, e é então quantizado ao ponto D8 do retículo, até que a condição de vetor zero não seja satisfeita; finalmente o vetor indicador k do último ponto D8 do retículo que satisfaz a condição de vetor zero é obtido de acordo com a fórmula de cálculo do vetor indicador; é emitido o vetor de indicador k do ponto D8 do retículo . Este processo pode também ser descrito usando-se os seguintes pseudocódigos:
Etapa 109: é codificado o indicador de quantização de vetor da subbanda de codificação de baixo bit, e neste momento, o número de bits alocados à sub-banda j satisfaz: 1<=region_bit(j)<5; o indicador de quantização de vetor, index_b(j,k), de cada vetor octadimensional em cada sub-banda de codificação é obtido de acordo com a quantização de vetor de retículo de pirâmide, em que k indica o vetor octadimensional de ordem k da sub-banda de codificação j. As etapas para a efetuação da codificação de Huffman no indicador de quantização,, index_b(j,k), são as seguintes: Etapa 109a: em todas as sub-bandas de codificação com o número de bits alocados maior do que 1 em menor do que 5 exceto 2 em um coeficiente único do domínio de frequência, cada quatro bits do código binário natural de cada indicador de quantização de vetor são agrupados em forma de um grupo e são submetidos à codificação de Huffman. Etapa 109b: em todas as sub-bandas de codificação em que o número de bits alocados é 2 em um único coeficiente do domínio de frequência, o indicador de quantização de vetor de retículo de pirâmide de cada vetor octadimensional é codificado usando 15 bits. Nos 15 bits, a codificação de Huffman é conduzida em tres grupos de 4 bits e um grupo de 3 bits respectivamente. Etapa 109c: quando o número de bits alocados ao único coeficiente do domínio de frequência da sub-banda de codificação for 1, se o indicador de quantização for inferior a 127, o indicador de quantização é codificado usando-se 7 bits, e os 7 bits são divididos em um grupo de 3 bits e um grupo de 4 bits, nos quais é conduzida a codificação de Huffman respectivamente; se o indicador de quantização for igual a 127, o seu valor de código binário natural é ”1111 1110”, os 7 primeiros “1”s são divididos em um grupo de 3 bits e em um grupo de 4 bits, nos quais é conduzida a codificação de Huffman respectivamente; se o indicador de quantização por igual a 128, o seu valor de código binário é “1111 1111”, os 7 primeiros “1”s são divididos em um grupo de 3 bits e em um grupo de 4 bits, nos quais é conduzida a codificação de Huffman respectivamente.
[094] O método para a condução da codificação de Huffman no indicador de quantização pode ser descrito usando-se os seguintes pseudocódigos:
Tabela 4 Tabela de código de Huffman para quantização de vetor de retículo de pirâmide
Tabela 5 Tabela de código de Huffman para quantização de vetor de retículo de pirâmide Tabela 6 Tabela de código de Huffman para quantização de vetor de retículo de pirâmide
Tabela 7 Tabela de código de Huffman para a quantização de vetor de retículo de pirâmide
[095] Etapa 109d: avalia-se se a codificação de Huffman pode economizar os bits.
[096] A coleção de todas as sub-bandas de codificação de alto bit é marcada como C e é calculado o número total de bits consumidos pelos indicadores de vetores de quantização dos vetores octadimensionais em todas as sub-bandas de codificação que pertencem a C depois da codificação de Huffman ter sido conduzida, bit _ used _ huff _all . bit_used _ huff _all é comparado com o número total de bits alocados a todas as sub-bandas de codificação em C sum(bit _ band _ used(j), j e C), e se bit _ used _ huff _ all < sum(bit_band_used(j), j e C), é transmitido o indicador de vetor de quantização depois da codificação de Huffman ter sido conduzida, sendo neste ínterim o sinalizador da codificação de Huffman Flag_huff_PLVQ 1; caso contrário, é efetuada a codificação natural no indicador de vetor de quantização diretamente, e o sinalizador de codificação de Huffman Flag_huff_PLVQ é ajustado para ser 0.
[097] Etapa 109e: é modificado o número de alocação de bits.
[098] Se o sinalizador de codificação de Huffman Flag_huff_PLVQ for 0, a alocação de bits da sub-banda de codificação não é modificada. Se o sinalizador de codificação de Huffmann Flag_huff_PLVQ for 1, a alocação de bits da sub-banda de codificação é modificada usando-se os bits economizados pela codificação de Huffman.
[099] Conforme mostrado na FIG. 2, o fluxo para a modificação da alocação de bits compreende especificamente as seguintes etapas: Etapa 109f: é calculado o número de bits economizados pela codificação de Huffman, e considerando-se a contagem = 0:Etapa 109g: se diff_huff for superior a 0, buscar o valor máximo rk(jk) em cada rk(j)(j=0,...,L-1), que é representado usando-se a seguinte fórmula: Etapa 109h: avalia-se se region_bit(jk)+1 é inferior ou igual a 9, se o for, a etapa 109i é executada; caso contrário, a importância que corresponde a jk é ajustada para ser a mínima (seja rk(jk)= -100), por exemplo, para indicar que o número de alocação de bits da sub-banda de codificação não precisa ser modificada, e pular para a etapa 109g. Etapa 109i: é avaliado se diff_huff.(region_bit(jk)+1)xBandWidth(jk) é superior ou igual a 0, e se o for, a etapa 109j é executada, isto é, o número de alocação de bits region _ bit( j ) da sub-banda de codificação jk é modificado, e o valor da importância da sub-banda rk(jk) é reduzido, o número de iteração para a modificação da alocação de bits é determinado como sendo count=count+1, e a quantização de vetor e a codificação de Huffman são novamente conduzidos na sub-banda de codificação jk, e finalmente é atualizado o valor de diff_huff; caso contrário, é terminado o fluxo de modificação de alocação de bits. Etapa 109j: durante o processo da modificação da alocação de bits, a sub-banda de codificação cujo número de alocação de bits é 0 tem alocado 1 bit, e a importância, depois da alocação de bits, é reduzida de 1, a sub-banda de codificação cujo número de alocação de bits é superior a 0 e inferior a 5 tem alocado 0,5 bit, e a importância, depois da alocação de bit, é reduzida de 0,5, e a sub-banda de codificação cujo número de alocação de bits é superior a 5 tem alocado 1 bit e a importância, depois da alocação de bits, é reduzida de 1. Etapa 109k: avalia-se se o número de iterações para a modificação da alocação de bits, count, é inferior ou igual a Maxcount, se o for, deve-se saltar para a etapa 109f, caso contrario termina o fluxo da modificação de alocação de bits.
[100] A Maxcount acima é o valor limite superior do número de iterações para a modificação da alocação de bits e este valor é determinado pela corrente de bits codificados e pela sua taxa de tomada de amostras. Neste exemplo, Maxcount=31.
[101] Procede-se à etapa 111.
[102] Etapa 110: o indicador de quantização de vetor da sub-banda de codificação de bit alto é codificado e neste momento, o número de bits alocados à sub-banda j satisfaz: 5<=region_bit(j)<=9.
[103] De acordo com o método na etapa 108, os vetores octadimensionais nas sub-bandas de codificação que têm os números de bits codificados que variam de 5 a 9 são quantizados para se obter o indicador de vetor k={k1, k2, k3, k4, k5, k6, k7, k8}, e cada componente do vetor indicador k é diretamente codificado de acordo com o número de bits alocados a um único coeficiente do domínio de frequência para obter os bits codificados do vetor.
[104] Etapa 111: é conduzida a quantização inversa nos coeficientes do domínio de frequência para os quais a quantização de vetor foi conduzida na camada de núcleo acima, e é efetuado um cálculo de diferença em relação aos coeficientes do domínio de frequência original obtidos depois de MDCT para obter o sinal residual da camada de núcleo.
[105] Etapa 112: o sinal residual da camada de núcleo é dividido em subbandas do mesmo modo como foi para os coeficientes do domínio de frequência, e o expoente de quantização de envelope de amplitude da subbanda do sinal residual de camada de núcleo é calculado de acordo com o expoente de quantização de envelope de amplitude da sub-banda de codificação da camada de núcleo e o número de alocação de bits (isto é, cada region_bit(j), j=0,..., L_core-1) da camada de núcleo.
[106] Esta etapa pode ser implementada através das seguintes sub-etapas: Etapa 112a: o valor de modificação do expoente de quantização de envelope de amplitude do sinal residual de camada de núcleo, diff(region_bit(j)), j=0,.,L_core-1, é calculado de acordo com o número de bits alocados a um único coeficiente do domínio de frequência em cada sub-banda de codificação da camada de núcleo, region_bit(j), j=0,.,L_core-1; em que, region_bit(j)= 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5, 6, 7, 8, j=0,.,L_core-1, e o valor de modificação do expoente de quantização de envelope de amplitude podem ser configurados pelas seguintes regras: > diff(region_bit(j))>0; e > quando region_bit(j)>0, diff(region_bit(j)) não diminui à medida que o valor de region_bit(j) aumenta.
[107] Para se obter melhores efeitos de codificação e de decodificação, as estatísticas podem ser feitas na diferença entre o expoente de quantização de envelope de amplitude de sub-banda calculado em relação a cada número de alocação de bits (region_bit) e o expoente de quantização de envelope de amplitude de sub-banda calculado diretamente a partir do sinal residual para obter o valor de modificação do expoente de quantização de envelope de amplitude com a mais alta probabilidade, conforme mostrado na Tabela 8: Tabela 8
[108] Etapa 112b: o expoente de quantização do envelope de amplitude da ordem j do sinal residual da camada de núcleo é calculado de acordo com o expoente de quantização de envelope de amplitude da sub-banda J de codificação da camada de núcleo e do valor de modificação do expoente de quantização na Tabela 8: em que, Thq (j) é o expoente de quantização de envelope de amplitude da sub-banda de codificação j na camada de núcleo.
[109] Deve ser observado que quando o número de alocação de bits de uma determinada sub-banda de codificação na camada de núcleo é 0, ele não precisa modificar o envelope de amplitude de sub-banda de codificação do sinal residual da camada de núcleo, e neste momento, o valor de envelope de amplitude de sub-banda do sinal residual da camada de núcleo é igual ao valor de envelope de amplitude da sub-banda de codificação da camada de núcleo.
[110] Além disso, quando o número de alocação de bits region_bit(j) de um determinada sub-banda de codificação da camada de núcleo for 9, o valor de envelope de amplitude de quantização da sub-banda de codificação de ordem j do sinal residual de camada de núcleo é ajustado para ser 0.
[111] Etapa 113: a alocação de bits é conduzida para cada sub-banda na camada estendida:
[112] O sinal de codificação da camada estendida é composto pelo sinal residual da camada de núcleo e pelos coeficientes de MDCT acima da faixa de frequência da camada de núcleo. A divisão em sub-bandas da camada estendida é determinada de acordo com a tabela 1. Os sinais de codificação nas sub-bandas 0,..., L_core-1 são sinais residuais da camada de núcleo, e os sinais de codificação em L_core,...,L -1 são coeficientes MDCT em sub-bandas correspondentes.
[113] O valor inicial da importância de cada sub-banda de codificação da camada estendida é calculado dentro dos limites totais da banda de frequência da camada estendida usando o mesmo esquema de alocação de bits que o usado para a camada de núcleo de acordo com o expoente de quantização calculado de envelope de amplitude de sub-banda do sinal residual da camada de núcleo, o expoente de quantização de envelope de amplitude da sub-banda de codificação composta pelos coeficientes de MDCT na camada estendida e o número de bits disponíveis na camada estendida, e os bits são alocados a cada sub-banda de codificação.
[114] Neste exemplo, os limites da banda de frequência da camada estendida são 0-13,6 kHz. A taxa de código total da corrente de áudio é 64 kbps, a taxa de código da camada de núcleo é 32 kbps, e então a taxa de código máxima da camada estendida é 64 kbps. O número total de bits disponíveis na camada estendida é calculado de acordo com a taxa de código da camada de núcleo e a taxa de código máxima da camada estendida, sendo então conduzida a alocação de bits até os bits terem sido completamente consumidos.
[115] Etapa 114: o sinal de codificação da camada estendida é normalizado, o vetor quantizado e codificado de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida e o número de alocação de bits correspondente para a obtenção de bits codificados do sinal de codificação. Sendo que a composição do vetor, o esquema de quantização de vetor e o esquema de codificação do sinal de codificação na camada estendida são iguais à composição de vetor, esquema de quantização de vetor e o esquema de codificação do coeficiente do domínio de frequência na camada de núcleo respectivamente.
[116] Etapa 115: conforme mostrado na Figura 3a, a corrente de código de codificação hierárquica é construída do seguinte modo: primeiro lançar as informações secundárias da camada de núcleo em um multiplexador MX de corrente de bits na seguinte sequência: Flag_huff_rms, Flag_huff_PLVQ_core e count; em seguida lançar os bits codificados de envelope de amplitude da subbanda de codificação da camada de núcleo no MUX, e em seguida lançar os bits codificados do coeficiente do domínio de frequência da camada de núcleo no MUX; lançar o sinalizador de codificação de Huffman de codificação de vetor Flag_huff_PLVQ_ext da camada estendida e o número de iterações da camada estendida count_ext no MUX, lançar os bits codificados de envelope de amplitude da sub-banda de codificação (L_core,...,L-1) composta pelos coeficientes de MDCT na camada estendida no MUX, e então lançar os bits codificados do sinal de codificação da camada estendida no MUX; finalmente transmitir a corrente de código da codificação hierárquica lançada na sequência acima à extremidade de decodificação; sendo que a sequência de lançamento dos bits codificados do sinal de codificação da camada estendida é baseada na sequência dos valores iniciais de importância de diversas sub-bandas de codificação. Isto é, os bits codificados da sub-banda de codificação com um valor inicial de importância maior são, de preferência, lançados na corrente de código, e para as sub-bandas de codificação com a mesma importância a sub-banda de codificação de frequência mais baixa tem a preferência.
[117] Como o envelope de amplitude do sinal residual na camada estendida é calculado a partir do envelope de amplitude e do número de alocação de bits da camada de núcleo, ele não precisa ser transmitido à extremidade de decodificação. Isto pode melhorar a precisão de codificação da largura de banda da camada de núcleo sem a adição de bits para a transmissão do valor de envelope de amplitude do sinal residual.
[118] Etapa 116: uma camada de taxa de código é construída de acordo com a magnitude da taxa de código.
[119] Os bits desnecessários na parte traseira do multiplexador de corrente de bits são rejeitados de acordo com a taxa de código exigida, à qual os bits são transmitidos e os bits cujos números satisfazem a exigência da taxa de código são transmitidos à extremidade de decodificação. Isto é, os bits desnecessários são rejeitados de acordo com a importância da sub-banda de codificação em uma ordem ascendente.
[120] Neste exemplo, os limites da banda de frequência de codificação são de 0-13,6 kHz, a taxa de código máxima é 64 kbps e o método para a disposição em camadas é baseado na taxa de código do seguinte modo: os coeficientes de MDCT dentro dos limites da banda de frequência de codificação de 0-6,4 kHz são agrupados em forma de uma camada de núcleo, a taxa de código máxima correspondendo à camada de núcleo é de 32 kbps e esta camada é marcada como camada L0; os limites da banda de frequência de codificação da camada estendida são de 0-13,6kHz, e a sua taxa de código máxima é de 64 kbps e esta camada é marcada como L1_5; antes de ser enviado à extremidade de decodificação a taxa de código é dividida, de acordo com o número de bits rejeitados na camada L1_1 que corresponde a 36 kbps, na camada L1_2 que corresponde a 40 kbps, na camada L1_3 que corresponde a 48 kbps, na camada L1_4 que corresponde a 56 kbps, e na camada L1_5 que corresponde a 64 kbps.
[121] A Figura 10 ilustra a relação entre a divisão de camadas dentro dos limites das bandas de frequência e a divisão de camadas de acordo com a taxa de código.
[122] A Figura 3 ilustra a estrutura de um sistema de codificação hierárquica de áudio melhorada de acordo com o Exemplo um da presente invenção. Conforme mostrado na figura 3, o sistema compreende uma unidade MDCT 301; uma unidade de cálculo de envelope de amplitude 302, uma unidade de quantização e codificação de envelope de amplitude 303, uma unidade de alocação de bits da camada de núcleo 304, uma unidade de quantização e codificação de vetores de coeficientes do domínio de frequência de camada de núcleo 305, uma unidade de geração de sinal de codificação de camada estendida 306, uma unidade de geração de envelope de amplitude de sinal residual 307, uma unidade de alocação de bits de camada estendida 308, e uma unidade de quantização e codificação de vetores de sinal de codificação de camada estendida 309, e um multiplexador de corrente de bits (MUX) 310; em que: a unidade de MDCT é configurada para conduzir a MDCT para um sinal de áudio lançado para gerar coeficientes do domínio de frequência; a unidade de cálculo de envelope de amplitude é configurada para dividir os coeficientes de domínio de frequência emitidos pela unidade MDCT em sub-bandas, e para calcular o valor de envelope de amplitude do domínio de frequência de cada sub-banda de codificação. De acordo com a posição da sub-banda que corresponde ao envelope de amplitude, ele pode ser dividido em envelope de amplitude da camada de núcleo e em envelope de amplitude da camada estendida; a unidade de quantização e codificação de envelope de amplitude é configurada para quantizar e codificar o valor de envelope de amplitude de cada sub-banda de codificação emitida pela unidade de cálculo de envelope de amplitude para gerar um expoente de quantização do envelope de amplitude da sub-banda e bits codificados do expoente de quantização de envelope de amplitude; a unidade de alocação de bits da camada de núcleo é configurada para calcular o valor inicial de importância de cada sub-banda de codificação de acordo com o expoente de quantização do envelope de amplitude de sub-banda emitido pela unidade de quantização e codificação de envelope de amplitude para conduzir a alocação de bits para a camada de núcleo de acordo com a importância de cada subbanda de codificação; a unidade de quantização e codificação de vetores de coeficientes de domínio de frequência da camada de núcleo é configurada para normalizar os coeficientes do domínio de frequência de cada sub-banda de codificação usando o valor de envelope de amplitude quantizado da sub-banda de codificação, e em seguida quantizar e codificar os vetores dos coeficientes de domínio de frequência que precisam ser codificados para gerar o valor de quantização de vetores e bits codificados dos coeficientes de domínio de frequência; a unidade de geração de sinal de codificação de camada estendida é configurada para quantizar inversamente os coeficientes de domínio de frequência quantizados com os vetores acima e conduzir um cálculo da diferença em relação aos coeficientes do domínio de frequência dentro da faixa de banda de frequência da camada de núcleo emitida pela unidade de MDCT para obter um sinal residual de camada de núcleo. O sinal residual da camada de núcleo e os coeficientes de domínio de frequência acima da faixa da camada de núcleo emitidos pela unidade de MDCT constituem o sinal de codificação de camada estendida; a unidade de geração de envelope de amplitude de sinal residual é configurada para conduzir a divisão em sub-bandas no sinal residual do mesmo modo como para os coeficientes de domínio de frequência, e para calcular o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e o número de alocação de bits; a unidade de alocação de bits de camada estendida é configurada para alocar bits a cada sub-banda de codificação da camada estendida e para gerar o número de alocação de bits de cada sub-banda de codificação da camada estendida; a unidade de quantização e codificação de vetor de sinal de codificação da camada estendida é configurada para normaliza, quantizar vetores e para codificar o sinal de codificação de acordo com o expoente de quantização de envelope de amplitude de sub-banda do sinal de codificação de camada estendida e o número de alocação de bits correspondente para obter os bits codificados do sinal de codificação; o multiplexador de corrente de bits é configurado para enviar as informações secundárias, os bits codificados de envelope de amplitude de cada sub-banda de codificação, os bits codificados dos coeficientes do domínio de frequência de camada de núcleo e os bits codificados do sinal de codificação de camada estendida à extremidade de decodificação.
[123] Veja a descrição no fluxograma mostrada na figura 1 para a função específica de cada unidade (módulo) na Figura 3.
[124] A Figura 4 é um fluxograma de um método de decodificação hierárquica de áudio melhorada de acordo com o Exemplo um da presente invenção. Conforme mostrado na figura 4, o método compreende: Etapa 401: uma matriz de bits codificados é extraída da corrente de código hierárquica enviada pela extremidade de codificação (isto é, do demultiplexador de corrente de bits DeMUX); depois dos bits codificados terem sido extraídos, primeiro são decodificadas as informações secundárias, e em seguida os bits codificados de cada envelope de amplitude da camada de núcleo na matriz são submetidos a decodificação de Huffman de acordo com o valor de Flag_huff_rms, ou então são diretamente decodificados, obtendo o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, Thq(j), j=0,...,L_core-1. Etapa 402: o valor inicial de importância de cada sub-banda de codificação da camada de núcleo é calculado de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, a alocação de bits é conduzida para cada sub-banda de codificação da camada de núcleo de acordo com a importância das sub-bandas para se obter o número de alocação de bits da camada de núcleo; o modo da alocação de bits na extremidade de decodificação é exatamente igual ao modo da alocação de bits na extremidade de codificação. Durante o processo de alocação de bits, o comprimento da etapa de alocação de bit e o comprimento da etapa da redução de importância depois da alocação de bits são variáveis.
[125] Depois do processo de alocação de bits acima ter sido terminado, conduz-se a alocação de bits na sub-banda de codificação para outras vezes de count de acordo com as vezes de modificação de alocação de bits, count, da camada de núcleo da extremidade de codificação, e a importância de cada sub-banda de codificação, e em seguida o processo de alocação de bits total é terminado.
[126] Durante o processo de alocação de bits, o comprimento de etapa da alocação de bits é de1 bit, e o comprimento da etapa de redução de importância depois da alocação de bits é 1 para uma sub-banda de codificação cujo número de alocação de bits é 0, o comprimento da etapa de alocação de bits para a alocação adicional de bits é de 0,5 bit e o comprimento de etapa de redução de importância depois da alocação de bits é também de 0,5 para uma sub-banda de codificação cujo número de alocação de bits é superior a 0 e inferior a um limiar de classificação e o comprimento da etapa de alocação de bits para a alocação de adicional de bits é de 1 bit e o comprimento da etapa de redução de importância depois da alocação de bits é também 1 para a sub-banda de codificação cujo número de alocação de bits é superior ou igual ao limiar de classificação.
[127] Etapa 403: os bits codificados dos coeficientes do domínio de frequência são decodificados inversamente quantizados e inversamente normalizados usando o número de alocação de bits da camada de núcleo e o valor de envelope de amplitude de quantização de cada sub-banda de codificação e de acordo com Flag_huff_PLVQ_core para obter os coeficientes do domínio de frequência de camada de núcleo.
[128] Etapa 404: quando decodificando e inversamente quantizando os bits codificados dos coeficientes do domínio de frequência, cada sub-banda de codificação é agrupado em uma sub-banda de baixo bit e uma sub-banda de alto bit de acordo com os números de alocação de bits das sub-bandas de codificação da camada de núcleo, e a sub-banda de baixo bit e a sub-banda de alto bit são inversamente quantizadas usando-se quantização/quantização inversa de vetores de retículo de pirâmide e quantização/quantização inversa de vetores de retículo de esfera, respectivamente, proceder para a etapa 405 e etapa 406.
[129] Etapa 405: de acordo com as informações secundárias, uma sub-banda de codificação de baixo bit é submetida a decodificação de Huffman ou submetida diretamente a decodificação natural para obter um indicador de quantização de vetores de retículo de pirâmide da sub-banda de codificação de bit baixo e todos os indicadores da quantização de vetores de retículo de pirâmide são inversamente quantizados e inversamente normalizado para obter os coeficientes do domínio de frequência da sub-banda de codificação; procede-se para a 407.
[130] 405a) Se Flag_huff_PLVQ=0, a decodificação é diretamente conduzida para se obter o indicador, index_b(j,m), da quantização do vetor de ordem m da sub-banda de codificação j de baixo bit, e se Flag_huff_PLVQ=1, o indicador, index_b(j,m), da quantização de ordem m da sub-banda de codificação de baixo bit j é obtida de acordo com a tabela de código de codificação de Huffman que corresponde ao número de alocação de bits de um único coeficiente do domínio de frequência da sub-banda de codificação;
[131] Quando o número de bits alocados a um único coeficiente do domínio de frequência da sub-banda de codificação for 1, se o valor do código binário natural do indicador de quantização for inferior a ”1111 111”, o índice de quantização é calculado de acordo com o valor do código binário natural, se o valor de código binário do indicador de quantização for igual a ”1111 111”, então ele continua a ler o bit seguinte; se o bit seguinte for 0, então o indicador de quantização será 127, e se o bit seguinte for 1 então o indicador de quantização será 128.
[132] 405b) O processo de quantização inversa de vetores de retículo de pirâmide do indicador de quantização é na verdade um processo inverso do processo de quantização de vetor 107. O processo da quantização inversa é o seguinte: 405c) são determinados a superfície de pirâmide de energia onde o expoente de quantização de vetor está localizado e o seu rótulo na superfície da pirâmide: encontrar kk na energia de superfície de pirâmide de 2 a LargeK(region_bit(j)), de tal modo que seja satisfeita a seguinte inequação: N(8,kk) <= index_b(j,m) < N(8,kk+2), se for encontrado um tal kk então K=kk é a energia da superfície da pirâmide em que está localizado o retículo de D8 que corresponde ao indicador de quantização index_b(j,m), b= index_b(j,m)-N(8,kk) é o rótulo do indicador do retículo de D8 na superfície da pirâmide onde ele está localizado; se um tal kk não puder ser encontrado a energia K da superfície da pirâmide do retículo de D8 que corresponde ao indicador de quantização index_b(j,m) é igual a 0 e o rótulo de indicador é igual 0; 405d) as etapas específicas para solucionar o vetor de retículo de D8 Y=(y1, y2 y3, y4, y5, y6, y7, y8,) cuja energia de superfície de pirâmide é K e o rótulo do indicador é b são as seguintes: Etapa 1: seja Y=(0,0,0,0,0,0,0,0), xb=0, i=1, k=K, 1=8; Etapa 2: se b=xb, então yi=0; pule para a etapa 6; Etapa 3: se b<xb+N(1-1,k), então yi=0, pule para a etapa 5; caso contrário, xb=xb+N(1-1,k); seja j=1; Etapa 4: se b<xb+2*N(1-1,k-j), então se xb<=b<xb+N(l-1,k-j), então yi=j; se b>=xb+N(l-1,k-j), então yi=-j, xb=xb+N(l-1, k-j); caso contrário, xb=xb+2*N(l-1, k-j), j=j+1; continuar com esta etapa; Etapa 5: atualizar k=k-|yi|, l=l-1, i=i+1, se k>0, saltar para a etapa 2; Etapa 6: se k>0, então y8=k-| yi|, Y=( y1, y2,..., y8) é o retículo a ser solucionado. 405e) conduzir a regulação inversa de energia no retículo D8 solucionado, obtendo em que, são fatores de escalamento que podem ser obtidos na Tabela 2. mrr, m Vm 405f) É conduzida uma normalização inversa em para se obter os coeficientes do domínio de frequência do vetor de ordem m da subbanda de codificação j que é restaurada pela extremidade de decodificação: em que, Thq(j) é o expoente de quantização de envelope de amplitude da sub-banda de codificação de ordem j.
[133] Etapa 406: a sub-banda de codificação de alto bit é codificada diretamente para a obtenção do indicador de quantização de vetor da subbanda de codificação de alto bit,e todos os indicadores de quantização de vetores são inversamente quantizados e inversamente normalizados para se obter o coeficiente do domínio de frequência da sub-banda de codificação.
[134] A codificação natural é diretamente conduzida nos bits codificados da sub-banda de codificação de alto bit para se obter o vetor k de índice m da subbanda de codificação j de alto bit, e o processo de quantização inversa da quantização de vetores de retículo de esfera no vetor indicador é na verdade um processo inverso do processo de quantização e as suas etapas específicas são as seguintes: 406a) calcular x=k*G, e calcular ytemp=x/(2^(region_bit(j)); em que, k é vetor indicador da quantização de vetores, region _ bit( j) representa o número de alocação de bits de um único coeficiente de domínio de frequência na sub-banda de codificação j; G é a matriz geradora do retículo de D8, cujo formato é o seguinte: 406b) calcular y=x-fD8(ytemp)* (2^(region_bit(j)); 406c) conduzir a regulação inversa da energia no D8 a ser solucionado, obtendo-se em que, são fatores de escalamento e podem ser consultados na Tabela 3.
[135] 406d) conduzir uma normalização inversa em para obter o coeficiente de domínio de frequência do vetor de ordem m da sub-banda de codificação j que é restaurada pela extremidade de decodificação: em que Thq(j) é o expoente de quantização de envelope de amplitude do sub-banda de codificação de ordem j.
[136] Etapa 407: o expoente de quantização de envelope de amplitude de subbanda do sinal residual da camada de núcleo é calculado de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda da camada de núcleo e o número de alocação de bits da camada de núcleo; o modo de calcular na extremidade de decodificação é exatamente igual do modo de calcular na extremidade de codificação.
[137] Cada bit codificado do envelope de amplitude acima da faixa do domínio de frequência de camada de núcleo é submetido a decodificação de Huffman de acordo com o valor de Flag_huff_rms ou diretamente decodificado para obter o expoente de quantização do envelope de amplitude, Thq(j), j=,L_core,...,L - 1, da sub-banda de codificação correspondente da camada estendida.
[138] Etapa 408: o sinal de codificação de camada estendida é composto pelo sinal residual de camada de núcleo e pelo coeficiente do domínio de frequência de camada estendida, e o valor inicial da importância de cada sub-banda de codificação é calculado de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida e a alocação de bits é conduzida para cada sub-banda de codificação da camada estendida de acordo com a importância de cada sub-banda de codificação para se obter o número de alocação de bits de cada sub-banda de codificação da camada estendida; o modo de se calcular o valor inicial de importância da subbanda de codificação e o modo de se alocar bits na extremidade de decodificação são iguais ao modo como se calcula o valor inicial da importância da sub-banda de codificação e o modo como se alocam bits na extremidade de codificação.
[139] Etapa 409: é calculado o sinal de codificação da camada estendida.
[140] Os bits codificados do sinal de codificação são decodificados e inversamente quantizados de acordo com o número de alocação de bits da camada estendida, e os dados para os quais a quantização inversa foi conduzida e são inversamente normalizados usando-se o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida para se obter o sinal de codificação da camada estendida.
[141] O modo de se decodificar e o modo de se quantizar inversamente na camada estendida são iguais aos modos como se decodifica e se quantiza inversamente na camada de núcleo.
[142] Nesta etapa a ordem de decodificação de cada sub-banda de codificação é determinado pelo valor inicial da importância de cada sub-banda de codificação. Se houver duas sub-bandas de codificação com a mesma importância será então decodificada preferencialmente a sub-banda de codificação de frequência menor, e simultaneamente é calculado o número de bits decodificados e a decodificação é terminada quando o número de bits decodificados satisfaz as exigências no número total de bits.
[143] A taxa de código para a transmissão da extremidade de codificação à extremidade de decodificação, por exemplo, é de 64 kbps, mas a extremidade de decodificação pode somente obter as informação dos primeiros 48 kbps da corrente de código devido a razões de rede,ou então a extremidade de decodificação pode somente suportar a decodificação de 48 kbps, portando a decodificação é terminada quando a extremidade de decodificação decodifica nos 48 kbps.
[144] Etapa 410: o sinal de codificação obtido pela decodificação na camada estendida é rearranjada de acordo com a ordem de frequências, e os coeficientes do domínio de frequência da camada de núcleo e os sinais de codificação da camada estendida na mesma frequência são acrescentados obtendo-se o valor de saída dos coeficientes de domínio de frequência.
[145] Etapa 411: o preenchimento com ruído é conduzido para a sub-banda à qual não é alocado nenhum bit codificado durante o processo de codificação ou então para a sub-banda que é perdida durante o processo de transmissão.
[146] Etapa412: IMDCT(Transformada Discreta de Cossenos Modificada Inversa) é conduzida para os coeficientes do domínio de frequência depois de ter sido conduzido o preenchimento com ruído para se obter o sinal de saída de áudio final.
[147] A Figura 5 ilustra a estrutura do sistema de decodificação hierárquica de áudio melhorado de acordo com o Exemplo um da presente invenção. Conforme mostrado na Figura 5, o sistema compreende: um demultiplexador (DeMUX) de corrente de bits 501, uma unidade de decodificação de envelope de amplitude de camada de núcleo 502, uma unidade de alocação de bits da camada de núcleo 503, e uma unidade de decodificação e quantização inversa da camada de núcleo 504, uma unidade de geração de envelope de amplitude de sinal residual de camada de núcleo 505, uma unidade de decodificação de envelope de amplitude de camada estendida 506, uma unidade de alocação de bits de camada estendida 507, uma unidade de decodificação e quantização inversa do sinal de codificação de camada estendida 508, uma unidade de geração de coeficiente de domínio de frequência 509, uma unidade de preenchimento com ruído 510 e uma unidade IMDCT 511; em que: um demultiplexador de corrente de bits é configurado para emitir bits codificados de envelope de amplitude, bits codificados de coeficientes do domínio de frequência, e bits codificados de sinal de codificação de camada estendida; a unidade de decodificação de envelope de amplitude de camada de núcleo é configurado para conduzir a decodificação de Huffman de acordo com o valor de Flag_huff_rms nas informações secundárias ou para conduzir uma decodificação direta nos bits codificados de envelope de amplitude da camada de núcleo emitidos pelo demultiplexador de corrente de bits para se obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, Thq(j)-j=0,.. .,L_core-1; a unidade de alocação de bits de camada de núcleo é configurada para calcular o valor inicial da importância de cada sub-banda de codificação de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo emitido pela unidade de quantização e codificação de envelope de amplitude, e conduzir a alocação de bits para cada sub-banda de codificação da camada de núcleo de acordo com a importância de cada sub-banda de codificação para se obter o número de alocação de bits da camada de núcleo; a unidade de decodificação e quantização inversa da camada de núcleo é configurada para decodificar, quantizar inversamente e normalizar inversamente os bits codificados dos coeficientes do domínio de frequência usando o número de alocação de bits e o valor de envelope de amplitude de quantização da camada de núcleo e de acordo com o valor de Flag_huff_PLVQ_core nas informações secundárias para se obter os coeficientes do domínio de frequência da camada de núcleo; a unidade de geração de envelope de amplitude de sinal residual de camada de núcleo é configurada para calcular o expoente de quantização de envelope de amplitude do sinal residual de sub-banda de codificação correspondente da camada de núcleo usando o expoente de quantização envelope de amplitude de cada sub-banda de codificação da camada de núcleo e o número de alocação de bits da camada de núcleo; a unidade de decodificação de envelope de amplitude de camada estendida é configurada para conduzir a decodificação de Huffman de acordo com o valor de Flag_huff_rms nas informações secundárias ou conduzir decodificação direta no bit codificado de envelope de amplitude acima da faixa de camada de núcleo emitida pelo demultiplexador de corrente de bits para se obter o expoente de quantização de envelope de amplitude, Thq(j).j= L_core,...,L -1, da sub-banda de codificação correspondente da camada estendida; a unidade de alocação de bits de camada estendida é configurada para calcular o valor inicial da importância de cada sub-banda de codificação de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida e para conduzir a alocação de bits para cada sub-banda de codificação da camada estendida de acordo com a importância de cada sub-banda de codificação para ser obtido o número de alocação de bits da camada estendida; a unidade de decodificação e quantização inversa do sinal de codificação da camada estendida é configurada para decodificar os bits codificados do sinal de codificação de camada estendida usando-se o número de alocação de bits da camada estendida, e para conduzir a quantização de vetores inversa e a normalização inversa para os dados decodificados usando o valor de envelope de amplitude de quantização da sub-banda de codificação da camada estendida para ser obtido o sinal de codificação da camada estendida; a unidade de geração de coeficientes do domínio de frequência é configurada para acrescentar os coeficientes do domínio de frequência de camada de núcleo emitidos pela unidade de decodificação e quantização inversa de camada de núcleo e o sinal de codificação de camada estendida emitido pela unidade de decodificação e quantização inversa do sinal de codificação da camada estendida para se obter o valor de saída de coeficiente de frequência; a unidade de preenchimento com ruído é configurada para conduzir o preenchimento com ruído nas sub-bandas de codificação às quais nenhum bit tenha sido alocado no valor de saída de coeficiente de frequência pela unidade de geração de coeficientes do domínio de frequência; a unidade de IMDCT é configurada para efetuar IMDCT para os coeficientes de domínio de frequência depois de ter sido conduzido o preenchimento com ruído para se obter o sinal de saída de áudio final.
[148] A Figura 6 é um fluxograma de um método de codificação hierárquica de áudio estendida de acordo com o Exemplo dois da presente invenção. Neste exemplo, o método de codificação hierárquica de áudio da presente invenção será descrito tomando-se uma corrente de áudio com um comprimento de matriz de 20 ms e uma taxa de tomada de amostras de 48 kHz como um exemplo. O método da presente invenção é também aplicável em outras condições de comprimento de matriz e taxa de tomada de amostras. Conforme mostrado na Figura 6, o método compreende: Etapa 601: MDCT (Transformada Discreta de Cossenos Modificada) é conduzida na corrente de áudio com um comprimento de matriz de 20 ms e uma taxa de tomada de amostras de 48 kHz para se obter N pontos de coeficientes do domínio de frequência. Neste exemplo, N = 960.
[149] Veja etapa 101 para o método específico para a implementação desta etapa.
[150] Etapa 602: os coeficientes do domínio de frequência de N pontos são divididos em diversas sub-bandas desiguais e em seguida é calculado o envelope de amplitude de domínio de frequência (a que se refere como envelope de amplitude para simplificação) de cada sub-banda.
[151] Etapa 102a: os coeficientes do domínio de frequência dentro dos limites de uma banda de frequência a ser codificada são divididos de L sub-bandas (que se pode denominar de sub-bandas de codificação);
[152] Neste exemplo, os limites da banda de frequência a ser codificada são 0-20 kHz e esta faixa de limites pode ser dividida em sub-bandas de modo desigual de acordo com as características perceptivas auditivas humanas. A Tabela 9 apresenta um modo de divisão específico.
[153] Na Tabela 9, os coeficientes do domínio de frequência dentro da faixa de limites da banda de frequência de 0-20 kHz são divididos em 36 sub-bandas de codificação, isto é, L = 36; os coeficientes do domínio de frequência acima de 20 kHz são ajustados para serem 0.
[154] Neste exemplo, a faixa de limites do domínio de frequência da camada de núcleo é também dividida. As sub-bandas numeradas de 0 a 15 na Tabela 9 são selecionadas como as sub-bandas da camada de núcleo, há ao todo L_core=16, e a faixa de limites da banda de frequência da camada de núcleo é de 0-6,4 kHz; as sub-bandas numeradas de 0 a 27 na Tabela 9 são selecionadas como sub-bandas da camada estendida 1, há L1 = 28 subbandas ao todo, e a faixa de limites da banda de frequência da camada estendida 1 é de 0-13,6 kHz; as sub-bandas numeradas de 0 a 35 na Tabela 9 são selecionadas como as sub-bandas da camada estendida 2, há L1 = 36 sub-bandas ao todo, e a faixa de limites da banda de frequência da camada estendida 2 é de 0-20 kHz Tabela 9 Sub-bandas de codificação no Exemplo dois
[155] Veja etapa 102 para o método específico para o cálculo do envelope de amplitude de cada sub-banda de codificação.
[156] Etapa 603: o valor de envelope de amplitude de cada sub-banda de codificação é quantizado e codificado para se obter o expoente de quantização de envelope de amplitude e os bits codificados do envelope de amplitude de cada sub-banda de codificação e os bits codificados do envelope de amplitude devem ser transmitidos ao MUX.
[157] Veja etapa 103 para o método específico para a implementação desta etapa.
[158] Etapa 604: o valor inicial da importância de cada sub-banda de codificação é calculado de acordo com a teoria de distorção da taxa de código e as informações de envelope de amplitude da sub-banda de codificação, e a alocação de bits para a camada de núcleo é conduzida de acordo com a importância de cada sub-banda de codificação da camada de núcleo.
[159] Veja etapa 104 para o método específico para a implementação desta etapa.
[160] Etapa 605: o cálculo da normalização é conduzido em cada coeficiente do domínio de frequência na sub-banda de codificação de acordo com o valor de envelope de amplitude de quantização ( 2Thq(j)/2 ) de cada sub-banda de codificação da camada de núcleo, sendo então os coeficientes do domínio de frequência normalizados agrupados para formar diversos vetores; os vetores são submetidos a quantização e codificação de vetores para gerar o valor de quantização de vetores e bits codificados dos coeficientes do domínio de frequência; os bits codificados dos coeficientes do domínio de frequência devem ser transmitidos ao MUX.
[161] Veja etapas 105-110 para o método específico para a implementação desta etapa.
[162] Etapa 606: a quantização inversa é conduzida nos coeficientes do domínio de frequência acima da camada de núcleo para o qual a quantização de vetores foi conduzida e é calculada a diferença em relação aos coeficientes do domínio de frequência original obtidos depois da MDCT para se obter o sinal residual da camada de núcleo que está marcado como sinal residual 1 e um sinal de codificação da camada estendida 1 é composto pelo sinal residual 1 e pelos coeficientes de frequências da camada estendida 1; de modo análogo, é conduzido o cálculo da diferença entre o sinal de codificação da camada estendida k-1 e um valor de quantização inversa do sinal de codificação da camada estendida k-1 para o qual foi conduzida a quantização de vetores para se obter o sinal residual da camada estendida k-1 que é marcado como sinal residual k, e um sinal de codificação da camada estendida k é composto pelo sinal residual k e pelos coeficientes do domínio de frequência da camada estendida k.
[163] Etapa 607: a mesma divisão em sub-bandas é conduzida para o sinal residual k que foi conduzida para o sinal de codificação da camada estendida k-1 e é calculado expoente de quantização de envelope de amplitude de subbanda do sinal residual k.
[164] O expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal residual 1 pode ser calculado de acordo com o expoente de quantização de envelope de amplitude de sub-banda da camada de núcleo e o número de alocação de bits da camada de núcleo. De modo análogo, o expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal residual em uma camada estendida superior pode ser calculado usando-se o expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal residual em uma camada estendida inferior e o número de alocação de bits da camada estendida inferior; isto é, o expoente de quantização de envelope de amplitude de sub-banda do sinal residual k na camada estendida k(k>1) é calculado de acordo com o expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal de codificação da camada estendida k-1 e o valor de modificação correspondente.
[165] Veja etapa 112 para o método específico para a implementação desta etapa.
[166] Etapa 608: a alocação de bits é conduzida para cada sub-banda na camada estendida (isto é, conduzindo-se alocação de bits para cada subbanda de codificação de cada sinal de codificação de camada estendida).
[167] O valor inicial da importância de cada sub-banda de codificação é calculado em cada camada estendida usando-se o mesmo esquema de alocação de bits que foi usado na camada de núcleo de acordo com o expoente de quantização de envelope de amplitude calculado do sinal de codificação de camada estendida e a alocação de bits é conduzida para cada sub-banda de codificação; neste exemplo, a taxa de código total da corrente de áudio é de 96 kbps, a taxa de código da camada de núcleo é de 32 kbps, e em seguida a taxa de código máxima da camada estendida 1 é de 64 kbps, e a taxa de código máxima da camada estendida 2 é de 96 kbps. O número de bits disponíveis em cada camada estendida é calculado respectivamente, sendo então conduzida a alocação de bits até os bits são totalmente consumidos. O modo da alocação de bits em cada camada estendida é o mesmo que é usado na camada de núcleo.
[168] Etapa 609: o sinal de codificação é normalizado, tem o vetor quantizado e codificado de acordo com o valor de envelope de amplitude de quantização da sub-banda de codificação calculado do sinal de codificação de camada estendida e o número de alocação de bits correspondente para obter os bits codificados do sinal de codificação. Sendo que a composição do vetor do sinal de codificação, o modo de se quantizar e codificar os vetores em cada camada estendida são iguais à composição do vetor do coeficiente do domínio de frequência, ao modo de quantização e de codificação do vetor na camada de núcleo respectivamente.
[169] Etapa 610: conforme mostrado na Figura 6a, a corrente de código da codificação hierárquica é construída do seguinte modo: em primeiro lugar lançam-se informações secundárias da camada de núcleo em um multiplexador de corrente de bits MUX na seguinte sequência: Flag_huff_rms, Flag_huff_PLVQ_core e count; lançam-se os bits codificados de envelope de amplitude da sub-banda de codificação da camada de núcleo no MUX, e em seguida lançam-se os bits codificados do coeficiente do domínio de frequência da camada de núcleo no MUX; lança-se Flag_huff_PLVQ e count na camada estendida no MUX de acordo com a ordem de cada camada estendida, lançam-se os bits codificados de envelope de amplitude da sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida no MUX, e em seguida lançam-se os bits codificados do sinal de codificação no MUX; finalmente transmite-se a corrente de código da codificação hierárquica lançada na sequência acima à extremidade de decodificação; sendo que a ordem do lançamento dos bits codificados do sinal de codificação é: lançam-se os bits codificados de cada camada estendida na corrente de código de acordo com a ordem das camadas estendidas da inferior para a superior; isto é, lançam-se as informações secundárias, bits codificados de envelope de amplitude de sub-banda de codificação dos coeficientes do domínio de frequência e bits codificados do sinal de codificação da camada estendida de ordem (k-1) antes de se lançar as informações secundárias, bits codificados de envelope de amplitude de sub-banda de codificação dos coeficientes do domínio de frequência e bits codificados do sinal de codificação da camada estendida de ordem k. Em cada camada estendida, a ordem de lançamento de bits codificados do sinal de codificação é baseada na ordem da importância inicial de cada sub-banda; isto é, os bits codificados do sinal de codificação da sub-banda com uma importância inicial maior são lançados na corrente de código preferencialmente.
[170] Etapa 613: uma camada de taxa de código é construída de acordo com a magnitude da taxa de código.
[171] Os bits desnecessários na parte traseira do multiplexador de corrente de bits são rejeitados de acordo com a taxa de código necessária para a transmissão e os bits cujo número satisfaz as exigências da taxa de código são transmitidos à extremidade de decodificação. Isto é, os bits desnecessários são rejeitados de acordo com a importância da sub-banda de codificação em uma ordem ascendente.
[172] Neste exemplo, os limites da banda de frequência de codificação são 020 kHz, a taxa de código máxima é de 96 kbps e o modo como se dispõe em camadas com base na taxa de código é o seguinte: os coeficientes do domínio de frequência MDCT na faixa de frequência de codificação de 0-6,4 são agrupados formando uma camada de núcleo, a taxa de código máxima correspondente a camada de núcleo é de 32 kbps e esta camada é marcada como camada L0; os limites de banda de frequência de codificação da camada estendida 1 são 0-13,6 kHz, a sua taxa de código máxima é de 64 kbps e a sua camada é marcada como camada L1_5; os limites da banda de frequência de codificação da camada estendida são 0-20 kHz, a sua taxa de código máxima é 96 kbps e a sua camada é marcada como camada L2_2; antes de enviar à extremidade de decodificação, de acordo com o número de bits rejeitados, a parte entre a camada L1_5 e a camada L2_2 é ainda agrupada na camada L2_1 correspondendo a 80 kbps e camada L2_2 que corresponde a 96 kbps.
[173] A Figura 10 ilustra a relação entre a divisão em camadas dentro dos limites das bandas de frequência e a divisão em camadas de acordo com a taxa de código.
[174] A Figura 7 ilustra a estrutura de um sistema de codificação hierárquica de áudio estendida de acordo com o Exemplo dois da presente invenção. Conforme mostrado na Figura 7, o sistema compreende uma unidade de MDCT 701, uma unidade de cálculo de envelope de amplitude 702, uma unidade de quantização e codificação de envelope de amplitude 703, uma unidade de alocação de bits de camada de núcleo 704, uma unidade de quantização e codificação de vetores de coeficientes do domínio de frequência 705, uma unidade de geração de sinal de codificação da camada estendida, uma unidade de geração de envelope de amplitude de sinal residual, uma unidade de alocação de bits de camada estendida e uma unidade de quantização e codificação de vetor de sinal de codificação; e um multiplexador de muitos trajetos 706.
[175] Na Figura 7, para descrever claramente a relação de interação de dados entre diversas camadas estendidas, a unidade de geração de sinal de codificação de camada estendida é ainda dividida em: unidades de geração de sinal de codificação de camada estendida 1 a K; a unidade de geração de envelope de amplitude de sinal residual é ainda dividida em: unidades de geração de envelope de amplitude de sinal residual 1 a k; a unidade de alocação de bits de camada estendida é ainda dividida em: unidades de alocação de bits de camada estendida 1 a K; a unidade de quantização e codificação de vetores de sinal de codificação é ainda dividida em: unidades de quantização e codificação de vetor de sinal de codificação 1 a K.
[176] A unidade MDCT é configurada para conduzir uma MDCT para um sinal de áudio de entrada para gerar coeficientes do domínio de frequência; a unidade de cálculo de envelope de amplitude é configurada para dividir os coeficientes do domínio de frequência emitidos pela unidade de MDCT em sub-bandas e para calcular um valor de envelope de amplitude de cada sub-banda de codificação; a unidade de quantização e codificação de envelope de amplitude é configurada para quantizar e codificar os valores de envelope de amplitude de cada sub-banda de codificação emitidos pela unidade de cálculo de envelope de amplitude para gerar um expoente de quantização de envelope de amplitude e bits codificados do envelope de amplitude de cada sub-banda de codificação; a unidade de alocação de bits da camada de núcleo é configurada para alocar bits à camada de núcleo de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo emitida pela unidade de quantização e codificação de envelope de amplitude; a unidade de quantização e codificação de vetores de coeficientes de domínio de frequência é configurada para normalizar os coeficientes do domínio de frequência de cada sub-banda de codificação usando o valor de envelope de amplitude quantizado da sub-banda de codificação na camada de núcleo e então quantizar e codificar o vetor dos coeficientes do domínio de frequência que devem ser codificados para gerar o valor de quantização de vetor e bits codificados dos coeficientes de domínio de frequência da camada de núcleo; a unidade de geração de sinal de codificação da camada estendida 1 é configurado para quantizar inversamente os coeficientes de domínio de frequência para os quais foi conduzida a quantização de vetor emitidos pela unidade de quantização e codificação de vetores de coeficientes de domínio de frequência e para conduzir um cálculo da diferença em relação aos coeficientes do domínio de frequência emitidos pela unidade de MDCT para obter o sinal residual (marcado como sinal residual 1) e sinal residual 1 e os coeficientes de domínio de frequência da camada estendida 1 constituem o sinal de codificação da camada estendida 1 (marcado como sinal de codificação 1); a unidade de geração de sinal de codificação da camada estendida i + 1 é configurada para quantizar inversamente o sinal de codificação i para o qual foi conduzida a quantização de vetor e emitido pela unidade de quantização e codificação de vetor de sinal de codificação i da camada estendida i e para conduzir o cálculo da diferença em relação ao sinal de codificação i para o qual não tenha sido conduzida a quantização de vetor e emitido pela unidade de geração de sinal de codificação de camada estendida i para se obter o sinal residual de camada estendida i (marcado como um sinal residual i + 1), e o sinal residual i + 1 e os coeficientes do domínio de frequência da camada estendida i + 1 constituem o sinal de codificação da camada estendida i + 1 (marcado como sinal de codificação i + 1); sendo que i = 1,..., K. 1, K é o número das camadas estendidas; a unidade de geração de envelope de amplitude de sinal residual 1 é configurada para dividir os sinais residuais da camada de núcleo em sub-bandas do mesmo modo para os coeficientes do domínio de frequência da camada de núcleo, e para calcular o expoente de quantização de envelope de amplitude da sub-banda do sinal residual de camada de núcleo (sinal residual 1) de acordo com o expoente de quantização de envelope de amplitude da sub-banda de codificação da camada de núcleo e o número de alocação de bits da camada de núcleo; a unidade de geração de envelope de amplitude de sinal residual i + 1 é configurada para calcular o expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal residual (sinal residual i + 1) da camada estendida i de acordo com o expoente de quantização de envelope de amplitude de sub-banda de codificação e o número de alocação de bits da camada estendida i; a unidade de alocação de bits de camada estendida i é configurada para alocar bits a cada sub-banda de codificação da camada estendida i e para gerar o número de alocação de bits de cada sub-banda de codificação da camada estendida i; sendo que i = 1,...,K, K é o número de camadas estendidas; a unidade de quantização e codificação de vetor de sinal de codificação i é configurada para normalizar, ter o vetor quantizado e codificado no sinal de codificação usando o valor de envelope de amplitude de quantização de sub-banda de codificação e o número de alocação de bits correspondente do sinal de codificação da camada estendida i para obter bits codificados do sinal de codificação i; sendo que i = 1,...,K, K é o número de camadas estendidas; o multiplexador de muitos trajetos é configurado para enviar informações secundárias, os bits codificados de envelope de amplitude de cada sub-banda de codificação dos coeficientes de domínio de frequência, os bits codificados dos coeficientes de domínio de frequência de camada de núcleo, as informações secundárias de cada camada estendida, e os bits codificados do sinal de codificação de camada estendida à extremidade de decodificação.
[177] A Figura 8 é um fluxograma de um método de decodificação hierárquica de áudio estendido de acordo com o Exemplo dois da presente invenção. Conforme mostrado na Figura 8, o método compreende: Etapa 801: uma matriz de bits codificados é extraída da corrente de código hierárquica enviada pela extremidade de codificação (isto é, do DeMUX separador de muitos trajetos); depois dos bits codificados terem sido extraídos, em primeiro lugar são decodificadas as informações secundárias, e em seguida os bits codificados de cada envelope de amplitude na matriz é decodificado por decodificação de Huffman de acordo com o valor de Flag_huff_rms ou é diretamente decodificado, obtendo-se o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, Thq(j), j=0,..., L_core-1; Etapa 802: o valor inicial da importância de cada sub-banda de codificação da camada de núcleo é calculado de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, é conduzida a alocação de bits para cada sub-banda de codificação da camada de núcleo de acordo com a importância da sub-banda para se obter o número de alocação de bits da camada de núcleo (isto é, Region_bit(j).j=0,., L_core-1); o modo como se efetua a alocação de bits na extremidade de decodificação é exatamente igual ao modo como o alocação de bits é efetuada na extremidade de codificação. Durante o processo de alocação de bits, o comprimento da etapa para a alocação de bits e o comprimento da etapa da redução da importância depois da alocação de bits são variáveis.
[178] Depois do processo de alocação de bits acima ter sido terminado, conduz-se a alocação de bits na sub-banda de codificação para outras vezes de count, de acordo com as vezes de modificação de alocação de bits, count, da camada de núcleo da extremidade de codificação, e a importância de cada sub-banda de codificação, sendo então todo o processo de alocação de bits terminado.
[179] Durante o processo de alocação de bits, o comprimento de etapa da alocação de bits é de 1 bit, e o comprimento de etapa da redução de importância depois da alocação de bits é de 1 para uma sub-banda de codificação cujo número de alocação de bits é 0; o comprimento de etapa de alocação de bits para a alocação adicional de bits é de 0,5 bit e o comprimento de etapa da redução de importância depois da alocação de bits é também de 0,5 para uma sub-banda de codificação cujo número de alocação de bits é superior a 0 e inferior a um limiar de classificação; e o comprimento de etapa de alocação de bits para a alocação adicional de bits é de 1 bit e o comprimento de etapa de redução da importância depois da alocação de bits é também de 1 para uma sub-banda de codificação cujo número de alocação de bits é superior ou igual ao limiar de classificação.
[180] Etapa 803: os bits codificados dos coeficientes de domínio de frequência da camada de núcleo são decodificados, inversamente quantizados e inversamente normalizados, usando o número de alocação de bits da camada de núcleo e o valor de envelope de amplitude de quantizaçãode cada sub-banda de codificação e de acordo com Flag_huff_PLVQ para obter os coeficientes de domínio de frequência de camada de núcleo.
[181] Etapa 804: o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual da camada de núcleo é calculado de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e o número de alocação de bits da camada de núcleo; o modo de se calcular na extremidade de decodificação é exatamente igual ao modo como se calcula na extremidade de codificação. O sinal residual da camada de núcleo e os coeficientes de domínio de frequência da camada estendida 1 constituem o sinal de codificação da camada estendida 1.
[182] De modo análogo, o expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal residual em uma camada estendida superior é calculado usando-se o expoente de quantização de envelope de amplitude de sub-banda de codificação do sinal de codificação em uma camada estendida inferior e o número de alocação de bits da camada estendida inferior; isto é, o expoente de quantização de envelope de amplitude de sub-banda do sinal residual na camada estendida i - 1 é calculado de acordo com o expoente de quantização de envelope de amplitude de subbanda de codificação do sinal de codificação da camada estendida i - 1 e o valor de modificação correspondente. o sinal residual da camada estendida i - 1 e os coeficientes de domínio de frequência da camada estendida i constituem o sinal de codificação da camada estendida i.
[183] Etapa 805: o valor inicial da importância de cada sub-banda de codificação é calculado de acordo com o expoente de quantização de envelope de amplitude do sinal de codificação de cada sub-banda de codificação de cada camada estendida, e a alocação de bits é conduzida para cada subbanda de codificação da camada estendida de acordo com a importância de cada sub-banda de codificação para se obter o número de alocação de bits da camada estendida; o modo de se calcular o valor inicial da importância da subbanda de codificação e o modo como se alocam bits na extremidade de decodificação são iguais ao modo como se calcula o valor inicial da importância da sub-banda de codificação e o modo como se alocam bits na extremidade de codificação.
[184] Etapa 806: Calcula-se o sinal de codificação de camada estendida.
[185] Os bits codificados do sinal de codificação são decodificados e têm o vetor inversamente quantizado de acordo com o número de alocação de bits da camada estendida, e os dados inversamente quantizados são inversamente normalizados usando-se o valor de envelope de amplitude de quantização de cada sub-banda de codificação do sinal de codificação da camada estendida para see obter o sinal de codificação da camada estendida.
[186] Nesta etapa, a ordem de decodificação o sinal de codificação de cada camada estendida é de uma camada estendida inferior para uma camada estendida superior, e a ordem de decodificação do sinal de codificação de cada sub-banda de codificação em uma camada estendida idêntica é determinado pelo valor inicial da importância de cada sub-banda de codificação. Se houver duas sub-bandas de codificação com a mesma importância, em seguida é preferencialmente decodificada uma sub-banda de codificação de frequência mais baixa e simultaneamente é calculado o número de bits decodificados, e a decodificação é terminada quando o número de bits decodificados satisfaz as exigências em um número total de bits.
[187] Etapa 807: os coeficientes do domínio de frequência da camada de núcleo e o sinal de codificação de cada camada estendida são acrescentados para se obter o valor de saída dos coeficientes de domínio de frequência.
[188] Etapa 808: o preenchimento com ruído é conduzido nas sub-bandas de codificação às quais nenhum bit codificado é alocado durante o processo de codificação;
[189] Etapa 809: IMDCT é conduzida para os coeficientes do domínio de frequência para os quais tenha sido conduzido o preenchimento com ruído para se obter o sinal de saída de áudio final.
[190] A Figura 9 ilustra a estrutura do sistema de decodificação hierárquica de áudio estendido de acordo com o Exemplo dois da presente invenção. Conforme mostrado na Figura 9, o sistema compreende: um demultiplexador de corrente de bits (DeMUX) 901, uma unidade de decodificação de envelope de amplitude 902, uma unidade de alocação de bits de camada de núcleo 903, e uma unidade de decodificação e quantização inversa de camada de núcleo 904, uma unidade de geração de envelope de amplitude de sinal residual, uma unidade de alocação de bits de camada estendida, uma unidade de decodificação e quantização inversa de sinal de codificação, uma unidade de geração de coeficientes do domínio de frequência 905, uma unidade de preenchimento com ruído 906, e uma unidade de IMDCT 907.
[191] Na Figura 9 para claramente descrever a relação de interação dos dados entre as diversas camadas estendidas, a unidade de geração de envelope de amplitude de sinal residual é ainda dividida em: unidades de geração de envelope de amplitude de sinal residual 1 a K; a unidade de alocação de bits de camadas estendidas é ainda dividida em: unidades de alocação de bits de camadas estendidas 1 a K; a unidade de decodificação e quantização inversa do sinal de codificação é ainda dividida em: unidades de decodificação e quantização inversa de sinal de codificação 1 a K. o demultiplexador de corrente de bits é configurado para emitir bits codificados de envelope de amplitude, os bits codificados de coeficientes do domínio de frequência e os bits codificados de sinal de codificação de cada camada estendida; a unidade de decodificação do envelope de amplitude é configurada para conduzir a decodificação de Huffman de acordo com o valor de Flag_huff_rms nas informações secundárias ou para conduzir uma decodificação direta nos bits codificados de envelope de amplitude emitidos pelo demultiplexador de corrente de bits para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, Thq(j), j=0,..., L_core-1; a unidade de alocação de bits de camada de núcleo é configurada para calcular o valor inicial da importância de cada sub-banda de codificação da camada de núcleo de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo emitido pelo unidade de decodificação do envelope de amplitude e para conduzir a alocação de bits para cada sub-banda de codificação da camada de núcleo de acordo com a importância de cada sub-banda de codificação para a obtenção do número de alocação de bits da camada de núcleo (isto é, Region_bit(j),j=0,., L_core-1); a unidade de decodificação e quantização inversa de camada de núcleo é configurada para decodificar, quantificar inversamente e inversamente normalizar os bits codificados dos coeficientes do domínio de frequência usando o número de alocação de bits da camada de núcleo e o valor de envelope de amplitude de quantização de cada sub-banda de codificação e de acordo com o valor de Flag_huff_PLVQ nas informações secundárias para a obtenção de coeficientes de domínio de frequência de camada de núcleo; a unidade de geração de envelope de amplitude de sinal residual 1 é configurada para calcular o expoente de quantização de envelope de amplitude do sinal residual de cada sub-banda de codificação da camada de núcleo de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda da camada de núcleo e o número de alocação de bits da camada de núcleo; a unidade de geração de envelope de amplitude de sinal residual i + 1 é configurada para calcular o expoente de quantização de envelope de amplitude do sinal residual de cada sub-banda de codificação da camada estendida i usando o expoente de quantização de envelope de amplitude de cada sub-banda de codificação de camada estendida i e o número de alocação de bits de camada estendida i; sendo que i = 1,..., K-1, K é o número das camadas estendidas; a unidade de alocação de bits da camada estendida i é configurada para calcular o valor inicial da importância de cada subbanda de codificação da camada estendida i de acordo com o expoente de quantização de envelope de amplitude do sinal de codificação de cada sub-banda de codificação da camada estendida i, e para conduzir uma alocação de bits para cada sub-banda de codificação da camada estendida i de acordo com a importância de cada sub-banda de codificação da camada estendida i para a obtenção do número de alocação de bits da camada estendida i; sendo que i = 1,...,K, K é o número das camadas estendidas; a unidade de decodificação e quantização inversa do sinal de codificação 1 é configurada para decodificar e inversamente quantizar os bits codificados do sinal de codificação i de acordo com o número de alocação de bits da camada estendida i, e para normalizar inversamente os dados inversamente quantizados usando o valor de envelope de amplitude de quantização da sub-banda de codificação do sinal de codificação da camada estendida i para a obtenção do sinal de codificação da camada estendida i; sendo que i = 1,..., K, K é o número de camadas estendidas; a unidade de geração de coeficientes do domínio de frequência é configurada para acrescentar os coeficientes do domínio de frequência da camada de núcleo emitidos pela unidade de decodificação e quantização inversa da camada de núcleo com o sinal de codificação de cada camada estendida emitido pela unidade de decodificação e quantização inversa do sinal de codificação para obter o valor de saída do coeficiente de frequência; a unidade de preenchimento com ruído é configurada para conduzir o preenchimento com ruído nas sub-bandas às quais não tenha sido alocado nenhum bit codificado dentre os valores de coeficientes do domínio de frequência emitidos pela unidade geradora de coeficientes do domínio de frequência; a unidade de IMDCT é configurada para conduzir a IMDCT para os coeficientes do domínio de frequência para os quais tenha sido conduzido o preenchimento com ruído para obter o sinal de saída de áudio final.
[192] Os versados nesta técnica podem observa que a totalidade ou parte das etapas na etapa acima pode ser implementada por hardware de instrução correlato através de um programa que pode ser armazenado em uma mídia de armazenagem legível por computador, tal como uma memória de leitura somente, disco ou um disco ótico, e assim por diante. Opcionalmente a totalidade ou parte das etapas nos exemplos acima pode também ser implementada usando-se um ou mais circuitos integrados. De modo análogo, cada módulo/unidade nos exemplos acima pode ser implementado/a na forma de hardware ou na forma de módulo funcional de software. A presente invenção não é limitada a qualquer forma específica de combinação de hardware e software.
[193] No método de codificação, decodificação hierárquicas de áudio, um modo idêntico de divisão em sub-bandas e de alocação de bits é aplicado na camada de núcleo e na camada estendida, as informações de envelope de amplitude da camada estendida são calculadas de acordo com as informações de envelope de amplitude da camada de núcleo, e as características de distribuição dos sinais propriamente ditos é levada em total consideração na alocação de bits tanto da camada de núcleo como da camada estendida, de modo tal, que a camada de núcleo e a camada estendida estão intimamente conectadas entre si e a corrente de código da camada estendida não compreende as informações de envelope de amplitude do sinal residual, aumentando assim a eficiência da codificação e da decodificação hierárquicas de áudio, aumentando ao mesmo tempo a relação de utilização de códigos.
Claims (17)
1. Método de codificação hierárquica de áudio, caracterizado pelo fato de que compreende as seguintes etapas: dividir os coeficientes do domínio de frequência de um sinal de áudio para o qual tenha sido conduzida uma Transformada Discreta de Cossenos Modificada (MDCT) em coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência de camada estendida, e dividir os coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência de camada estendida em uma multiplicidade de sub-bandas de codificação, e quantizar e codificar os valores de envelope de amplitude das sub-bandas de codificação; alocar bits a cada sub-banda de codificação de uma camada de núcleo de acordo com o valor de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e em seguida quantizar e codificar os coeficientes de domínio de frequência de camada de núcleo para obter bits codificados dos coeficientes de domínio de frequência de camada de núcleo; calcular um valor de envelope de amplitude de cada sub-banda de codificação de um sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e um número de alocação de bits de cada sub-banda de codificação da camada de núcleo, em que o valor de envelope de amplitude de cada sub-banda de codificação de um sinal residual de camada de núcleo é calculado da seguinte forma: quantizar inversamente o valor quantizado do coeficiente do domínio de frequência de camada de núcleo e implementar um cálculo de diferença em relação ao coeficiente do domínio de frequência de camada de núcleo para obter o sinal residual de camada de núcleo; e dividir o sinal residual de camada de núcleo em sub-bandas de codificação de um modo idêntico como para o coeficiente do domínio de frequência de camada de núcleo e calcular o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual da camada de núcleo de acordo com o valor de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada de núcleo. alocar os bits a cada sub-banda de codificação de uma camada estendida de acordo com um sinal de codificação de camada estendida composto pelo sinal residual da camada de núcleo e pelos coeficientes do domínio de frequência de camada estendida e o valor de envelope de amplitude de cada sub-banda de codificação composto pelo sinal de codificação da camada estendida, quantizar e codificar então o sinal de codificação da camada estendida para obter bits codificados do sinal de codificação da camada estendida; e multiplexar e empacotar bits de informações secundárias da camada de núcleo, os bits codificados do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, os bits codificados dos coeficientes do domínio de frequência de camada de núcleo, os bits de informações secundárias da camada estendida, os bits codificados de cada envelope de amplitude dos coeficientes do domínio de frequência de camada estendida e os bits codificados do sinal de codificação da camada estendida, e transmitir então para uma extremidade de decodificação.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que na etapa de dividir coeficientes do domínio de frequência de um sinal de áudio para o qual tenha sido conduzida uma Transformada Discreta de Cossenos Modificada (MDCT) em coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência de camada estendida, e dividir os coeficientes do domínio de frequência de camada de núcleo e os coeficientes do domínio de frequência de camada estendida em uma multiplicidade de sub-bandas de codificação, os coeficientes do domínio de frequência, depois de ter sido conduzida a MDCT, são divididos em uma multiplicidade de sub-bandas de codificação uniformemente espaçadas, ou são divididos em uma multiplicidade de sub-bandas de codificação não uniformes de acordo com as características perceptivas auditivas; as sub-bandas de codificação de baixa frequência são agrupadas como sub-bandas de codificação de camada de núcleo e as sub-bandas de codificação de alta frequência são agrupadas como sub-bandas de codificação de camada estendida.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que, na etapa de quantização e codificação dos coeficientes do domínio de frequência de camada de núcleo e do sinal de codificação de camada estendida, os vetores a serem quantizados de uma sub-banda de codificação cujo número de alocação de bits é inferior a um limiar de classificação são quantizados e codificados usando quantização de vetor de retículo de pirâmide e os vetores a serem quantizados de uma subbanda de codificação cujo número de alocação de bits é superior ao limiar de classificação são quantizados e codificados usando uma quantização de vetor de retículo de esfera; o número de alocação de bits é um número de bits alocados a um único coeficiente do domínio de frequência em uma sub-banda de codificação.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a etapa de obtenção de bits codificados dos coeficientes do domínio de frequência de camada de núcleo compreende: calcular o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e alocar bits a cada sub-banda de codificação da camada de núcleo; e normalizar os coeficientes do domínio de frequência de cada sub-banda de codificação de acordo com um valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada de núcleo reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e quantizar e codificar de acordo com o número de alocação de bits de cada sub-banda de codificação da camada de núcleo usando quantização de vetor de retículo de pirâmide e quantização de vetor de retículo de esfera respectivamente para obter os bits codificados dos coeficientes do domínio de frequência de camada de núcleo; sendo que a etapa de obtenção de bits codificados do sinal de codificação de camada estendida compreende: constituir o sinal de codificação de camada estendida com o sinal residual de camada de núcleo e os coeficientes do domínio de frequência de camada estendida; alocar bits a cada sub-banda de codificação da camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal de codificação de camada estendida; e normalizar o sinal de codificação de cada sub-banda de codificação de acordo com um valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida, e quantizar e codificar de acordo com o número de alocação de bits de cada sub-banda de codificação da camada estendida usando método de quantização de vetor de retículo pirâmide e método de quantização de vetor de retículo de esfera respectivamente para obter os bits codificados do sinal de codificação de camada estendida.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a etapa de cálculo do valor de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo compreende: calcular um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e implementar um cálculo de diferença em relação a um valor de modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo; o valor de modificação do expoente de quantização de cada sub-banda de codificação sendo superior ou igual a 0, e não diminuindo quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta; e quando o número de alocação de bits de uma sub-banda de codificação da camada de núcleo for 0, o valor de modificação do expoente de quantização sendo 0, e quando o número de alocação de bits da sub-banda de codificação da camada de núcleo for um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual de camada de núcleo na sub-banda de codificação sendo 0.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que na etapa de multiplexação e empacotamento dos ditos bits de informação da camada de núcleo, os bits codificados do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, os bits codificados dos coeficientes de domínio de frequência de camada de núcleo, os ditos bits de informação da camada estendida, os bits codificados de cada envelope de amplitude dos coeficientes de domínio de frequência de camada estendida, e os bits codificados do sinal de codificação de camada estendida, e da sua transmissão subsequente à extremidade de decodificação, a multiplexação e o empacotamento são implementados de acordo com o formato de corrente de código abaixo: lançar bits de informações secundárias da camada de núcleo depois de um cabeçalho de matriz de uma corrente de código, lançar os bits codificados de valor de envelope de amplitude da sub-banda de codificação da camada de núcleo em um multiplexador de corrente de bits MUX, e em seguida lançar os bits codificados dos coeficientes do domínio de frequência de camada de núcleo no MUX; e lançar os bits de informações secundárias da camada estendida no MUX, lançar os bits codificados de valor de envelope de amplitude da sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida no MUX e em seguida lançar os bits codificados do sinal de codificação de camada estendida no MUX; os bits cujo número satisfaz uma taxa de código exigida são enviados a extremidade de decodificação de acordo com a taxa de código exigida.
7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que as informações secundárias da camada de núcleo incluem bits de sinalizador de codificação de Huffman do envelope de amplitude de subbanda de codificação composto pelos coeficientes de MDCT, bits de sinalizador de codificação de Huffman dos coeficientes do domínio de frequência de camada de núcleo, e bits de um número de iterações; e as informações secundárias da camada estendida incluem bits de sinalizador de codificação de Huffman do sinal de codificação de camada estendida e bits de um número de iterações.
8. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que a etapa de se enviar os bits cujo número satisfaz a taxa de código exigida à extremidade de decodificação compreende: codificar a camada de núcleo e a camada estendida dentro de uma faixa de limites de uma banda de frequência integral em que a codificação é necessária de acordo com um número de bits para uma taxa de código máxima definida, de modo tal que a taxa de código máxima é atingida dentro dos limites da banda de frequência de codificação; depois dos bits codificados da camada de núcleo, lançar os bits codificados do sinal de codificação de camada estendida no multiplexador de corrente de bits de acordo com um valor inicial da importância de cada sub-banda de codificação em uma ordem descendente; e enviar os bits cujo número satisfaz a taxa de código exigida para a extremidade de decodificação com base no princípio de que os bits codificados da sub-banda de codificação com um valor inicial de importância menor são rejeitados primeiro; pelo fato de que a taxa de código que corresponde à camada de núcleo é marcada como camada L0, cada taxa de código correspondente a camada estendida é marcada como L1_1, camada L1_2,..., até a camada L1_K de acordo com um número de bits rejeitados da camada estendida respectivamente, sendo que a taxa de código da camada L1_K é exatamente a taxa de código máxima.
9. Método, de acordo com qualquer uma das reivindicações 1 a 3, caracterizado pelo fato de que depois da etapa de divisão dos coeficientes do domínio de frequência de um sinal de áudio para o qual tenha sido conduzida a Transformada Discreta de Cossenos Modificada (MDCT) nos coeficientes do domínio de frequência de camada de núcleo e nos coeficientes do domínio de frequência de camada estendida, o método compreende ainda: dividir os coeficientes do domínio de frequência da camada estendida, em uma ordem ascendente de frequências em M partes que são coeficientes do domínio de frequência de camadas estendidas a partir da camada estendida 1 até a camada estendida M respectivamente, sendo que a frequência para o coeficiente do domínio de frequência em uma camada estendida 1 é a mais baixa e a frequência para o coeficiente do domínio de frequência em uma camada estendida M é a mais elevada; depois da etapa de quantização e codificação dos coeficientes do domínio de frequência de camada de núcleo, o método compreende ainda: quantizar inversamente o valor quantizado do coeficiente do domínio de frequência de camada de núcleo e implementar um cálculo de diferença em relação ao coeficiente do domínio de frequência de camada de núcleo para obter o sinal residual de camada de núcleo; na etapa de calcular um valor de envelope de amplitude de cada sub-banda de codificação de um sinal residual de camada de núcleo de acordo com o valor de envelope de amplitude e um número de alocação de bits de cada sub-banda de codificação da camada de núcleo, o sinal residual de camada de núcleo é dividido nas sub-bandas de codificação do mesmo modo como para a camada de núcleo e o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo é calculado de acordo com o valor de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada de núcleo; na etapa de alocação dos bits a cada sub-banda de codificação de uma camada estendida de acordo com um sinal de codificação de camada estendida composto pelo sinal residual de camada de núcleo e pelos coeficientes do domínio de frequência de camada estendida e o valor de envelope de amplitude de cada sub-banda de codificação composto pelo sinal de codificação de camada estendida, e de quantização e codificação do sinal de codificação de camada estendida para a obtenção de bits codificados do sinal de codificação de camada estendida, o sinal de codificação da camada estendida 1 é constituído com o sinal residual de camada de núcleo e o coeficiente do domínio de frequência da camada estendida 1, o expoente de quantização de envelope de amplitude de cada sub-banda de codificação é calculado de acordo com o sinal de codificação da camada estendida 1, e são alocados bits a cada sub-banda de codificação da camada estendida 1; o sinal de codificação da camada estendida 1 é quantizado e codificado de acordo com o número de alocação de bits de cada sub-banda de codificação da camada estendida 1; o valor quantizado do sinal de codificação de uma camada estendida i é inversamente quantizado e um cálculo de diferença é implementado em relação ao sinal de codificação da camada estendida i para se obter um sinal residual da camada estendida i; o sinal residual da camada estendida i é dividido em sub-bandas de codificação do mesmo modo como para a camada estendida i, e o valor de envelope de amplitude de cada sub-banda de codificação do sinal residual da camada estendida i é calculado de acordo com o valor de envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada estendida i; o sinal de codificação de uma camada estendida i+1 é constituído com o sinal residual da camada estendida i e o coeficiente do domínio de frequência da camada estendida i+1, e bits são alocados a cada sub-banda de codificação da camada estendida i+1 de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal de codificação da camada estendida i+1; e o sinal de codificação de cada sub-banda de codificação da camada estendida i+1 é normalizado, o vetor quantizado e codificado de acordo com um valor de envelope de amplitude de quantização e um número de bits codificados de cada sub-banda de codificação da camada estendida i+1 reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida i+1 para se obter os bits codificados do sinal de codificação da camada estendida i+1; sendo i=1, N-1, e N um número inteiro positivo superior a 2.
10. Método, de acordo com qualquer uma das reivindicações 1 ou 6, caracterizado pelo fato de que, quando se multiplexa e empacota os ditos bits de informação da camada de núcleo, os bits codificados do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, os bits codificados dos coeficientes do domínio de frequência de camada de núcleo, os ditos bits de informação de camada estendida, os bits codificados de cada envelope de amplitude dos coeficientes do domínio de frequência de camada estendida, e os bits codificados do sinal de codificação da camada estendida, a multiplexação e o empacotamento são implementados de acordo com o seguinte formato de corrente de código: depois dos bits codificados da camada de núcleo, de acordo com um número da camada estendida, lançar os bits de uma camada estendida com um número de série menor em um multiplexador e corrente de bits MUX, e em seguida lançar os bits de uma camada estendida com um número de série maior no multiplexador de corrente de bits MUX; em uma camada estendida idêntica, primeiro lançar os bits das informações secundárias da camada estendida no MUX, lançar os bits codificados do valor de envelope de amplitude da sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida no MUX, e em seguida lançar os bits codificados do sinal de codificação de camada estendida no MUX; enviar os bits cujo número satisfaz uma taxa de código exigida à extremidade de decodificação de acordo com a taxa de código exigida.
11. Método de decodificação hierárquica de áudio, caracterizado pelo fato de que compreende as seguintes etapas: demultiplexar uma corrente de bits enviados por uma extremidade de codificação, e decodificar os bits codificados de envelope de amplitude de coeficientes do domínio de frequência de camada de núcleo para obter um valor de envelope de amplitude de cada sub-banda de codificação de uma camada de núcleo; alocar bits a cada sub-banda da camada de núcleo de acordo com o valor de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e calcular um valor de envelope de amplitude de um sinal residual de camada de núcleo; decodificar os bits codificados de envelope de amplitude de coeficientes do domínio de frequência de camada estendida para obter um valor de envelope de amplitude dos coeficientes do domínio de frequência de camada estendida; alocar bits a cada sub-banda de codificação de uma camada estendida de acordo com o valor de envelope de amplitude do sinal residual de camada de núcleo e valor de envelope de amplitude dos coeficientes do domínio de frequência de camada estendida; e decodificar respectivamente os bits codificados dos coeficientes do domínio de frequência de camada de núcleo e os bits codificados de um sinal de codificação de camada estendida de acordo com um número de alocação de bits da camada de núcleo e um número de alocação de bits da camada estendida para obter os coeficientes do domínio de frequência de camada de núcleo e o sinal de codificação de camada estendida, rearranjar o sinal de codificação de camada estendida de acordo com uma ordem de bandas de frequência e acrescentar os coeficientes do domínio de frequência da camada de núcleo para obter os coeficientes do domínio de frequência de uma largura de banda total, conduzir uma Transformada Discreta de Cossenos Modificada inversa (IMDCT) nos coeficientes do domínio de frequência da largura de banda total para obter um sinal de áudio de saída; em que a etapa de calcular o valor de envelope de amplitude do sinal residual de camada de núcleo compreende calcular um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e implementar um cálculo de diferença em relação a um valor de modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo; calcular o valor de envelope de amplitude de cada sub-banda do sinal residual de uma camada estendida i de acordo com o envelope de amplitude e o número de alocação de bits de cada sub-banda de codificação da camada estendida i; sendo o valor de modificação do expoente de quantização de cada sub-banda de codificação superior ou igual a 0, e não diminuindo quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta; e quando o número de alocação de bits de uma sub-banda de codificação da camada de núcleo for 0, o valor de modificação do expoente de quantização é 0, e quando o número de alocação de bits da sub-banda de codificação for um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual da camada de núcleo na sub-banda de codificação é 0.
12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que a etapa de obtenção dos coeficientes do domínio de frequência de camada de núcleo e do sinal de codificação de camada estendida compreende: decodificar, quantizar inversamente e normalizar inversamente os bits codificados dos coeficientes do domínio de frequência de camada de núcleo de acordo com o número de alocação de bits, ao valor de envelope de amplitude de quantização e as informações secundárias de cada sub-banda de codificação da camada de núcleo para obter os coeficientes do domínio de frequência de camada de núcleo; e decodificar, quantizar inversamente e normalizar inversamente os bits codificados do sinal de codificação de camada estendida de acordo com o número de alocação de bits de cada sub-banda de codificação da camada estendida, o valor de envelope de amplitude de quantização e as informações secundárias do sinal de codificação de camada estendida para obter o sinal de codificação de camada estendida.
13. Método, de acordo com qualquer uma das reivindicações 11 ou 12, caracterizado pelo fato de que, na etapa de decodificação dos bits codificados do sinal de codificação de camada estendida, os bits codificados do sinal de codificação de camada estendida são decodificados na seguinte ordem: nas diferentes camadas estendidas, a ordem para decodificação de diversas camadas consiste em: primeiro decodificar os bits codificados de cada sub-banda de codificação e do envelope de amplitude de uma camada estendida inferior com um número de série de camada estendida menor, e em seguida decodificar os bits codificados de cada sub-banda de codificação e do envelope de amplitude de uma camada estendida superior com um número de série de camada estendida maior, um número de bits decodificados é calculado durante a decodificação e a decodificação é terminada quando o número dos bits decodificados satisfaz as exigências em um número total de bits; em uma camada estendida idêntica, a ordem para a decodificação de diversas sub-bandas é determinada por um valor inicial de importância de cada sub-banda de codificação, uma sub-banda de codificação com uma maior importância sendo preferencialmente decodificada, e se houver duas sub-bandas de codificação com a mesma importância então é preferencialmente decodificada uma sub-banda de codificação de frequência mais baixa, um número de bits decodificados é calculado durante a decodificação e a decodificação é terminada quando o número de bits decodificados satisfaz as exigências no número total de bits.
14. Sistema de codificação hierárquica de áudio, caracterizado pelo fato de que compreende: uma unidade de Transformada Discreta de Cossenos Modificada (MDCT), uma unidade de cálculo de envelope de amplitude, uma unidade de quantização e de codificação de envelope de amplitude, uma unidade de alocação de bits de camada de núcleo, uma unidade de quantização e codificação de vetores de coeficientes do domínio de frequência de camada de núcleo, e um multiplexador de corrente de bits; compreendendo ainda o sistema: uma unidade de geração de sinal de codificação de camada estendida, uma unidade geradora de envelope de amplitude de sinal residual, uma unidade de alocação de bits da camada estendida, e uma unidade de quantização e codificação de vetores de sinal de codificação de camada estendida; sendo que: a unidade MDCT é configurada para conduzir a Transformada Discreta de Cossenos Modificada em um sinal de áudio lançado para gerar coeficientes do domínio de frequência de camada de núcleo e coeficientes do domínio de frequência de camada estendida; a unidade de cálculo do envelope de amplitude é configurada para agrupar as partes a serem codificadas nos coeficientes do domínio de frequência da camada de núcleo e nos coeficientes do domínio de frequência de camada estendida como sub-bandas de codificação de coeficientes do domínio de frequência de camada de núcleo e como subbandas de codificação de coeficientes do domínio de frequência de camada estendida e calcular um valor de envelope de amplitude de cada sub-banda de codificação; a unidade de quantização e codificação de envelope de amplitude é configurada para quantizar e codificar os valores de envelope de amplitude das sub-bandas de codificação de coeficientes do domínio de frequência de camada de núcleo e das sub-bandas de codificação de coeficientes do domínio de frequência de camada estendida para gerar um expoente de quantização de envelope de amplitude e bits codificados de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada de núcleo e dos coeficientes do domínio de frequência de camada estendida; a unidade de alocação de bits da camada de núcleo é configurada para alocar bits à camada de núcleo para obter um número de alocação de bits de cada sub-banda de codificação da camada de núcleo; a unidade de quantização e codificação de vetores de coeficientes do domínio de frequência de camada de núcleo é configurada para normalizar quantizar e codificar vetores dos coeficientes do domínio de frequência de cada sub-banda de codificação da camada de núcleo usando o valor de envelope de amplitude de quantização e um número de alocação de bits de cada sub-banda de codificação da camada de núcleo reconstruída de acordo com o expoente de quantização do envelope de amplitude de cada sub-banda de codificação da camada de núcleo para obter bits codificados dos coeficientes do domínio de frequência da camada de núcleo; a unidade de geração de sinal de codificação de camada estendida é configurada para gerar um sinal residual, e obter um sinal de codificação de camada estendida composto pelo sinal residual e pelos coeficientes do domínio de frequência de camada estendida; a unidade de geração de envelope de amplitude de sinal residual é configurada para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de acordo com um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e um número de alocação de bits de uma sub-banda de codificação correspondente; a unidade de alocação de bits de camada estendida é configurada para alocar bits a uma camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual e o expoente de quantização de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida para obter um número de alocação de bits de cada sub-banda de codificação do sinal de codificação de camada estendida; a unidade de quantização e codificação de vetor de sinal de codificação de camada estendida é configurada para normalizar, quantizar e codificar o vetor do sinal de código de cada sub-banda de codificação da camada estendida usando um valor de envelope de amplitude de quantização e o número de alocação de bits de cada sub-banda de codificação da camada estendida reconstruída de acordo com o expoente de quantização de envelope de amplitude de cada subbanda de codificação da camada estendida para obter bits codificados do sinal de codificação de camada estendida; o multiplexador de corrente de bits é configurado para empacotar bits de informações secundárias da camada de núcleo, os bits codificados do envelope de amplitude de cada sub-banda de codificação da camada de núcleo, os bits codificados dos coeficientes do domínio de frequência de camada de núcleo, os bits de informações secundárias da camada estendida, os bits codificados de cada envelope de amplitude dos coeficientes do domínio de frequência de camada estendida e os bits codificados do sinal de codificação da camada estendida, e então transmitir para uma extremidade de decodificação; em que a unidade de geração de sinal de codificação de camada estendida compreende ainda uma unidade de geração de sinal residual e uma unidade sintetizadora de sinal de codificação de camada estendida; a unidade de geração de sinal residual é configurada para quantizar inversamente os valores quantizados dos coeficientes do domínio de frequência de camada de núcleo, e para implementar um cálculo de diferença em relação ao coeficiente do domínio de frequência de camada de núcleo para obter um sinal residual de camada de núcleo; a unidade sintetizadora de sinal de codificação de camada estendida é configurada para sintetizar o sinal residual de camada de núcleo e os coeficientes do domínio de frequência de camada estendida em uma ordem de bandas de frequência para obter um sinal de codificação de camada estendida.
15. Sistema, de acordo com a reivindicação 14, caracterizado pelo fato de que a unidade de geração de envelope de amplitude de sinal residual compreende ainda uma unidade de obtenção do valor de modificação do expoente de quantização e uma unidade de cálculo do expoente de quantização de envelope de amplitude de sinal residual; a unidade de obtenção do valor de modificação do expoente de quantização é configurada para calcular um valor de modificação do expoente de quantização de cada sub-banda de codificação do sinal residual de acordo com o número de alocação de bits de cada subbanda de codificação da camada de núcleo, sendo que o valor de modificação do expoente de quantização de cada sub-banda de codificação é superior ou igual a 0 e não diminui quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta; quando o número de alocação de bits de uma sub-banda de codificação da camada de núcleo é 0, o valor de modificação do expoente de quantização é 0, e quando o número de alocação de bits da sub-banda de codificação é um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual na sub-banda de codificação é 0; a unidade de cálculo do expoente de quantização de envelope de amplitude de sinal residual é configurada para implementar um cálculo de diferença entre um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e um valor de modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual da camada de núcleo; ou o multiplexador de corrente de bits é configurado para lançar os bits codificados do sinal de codificação de camada estendida em uma corrente de código de acordo com um valor inicial de importância de cada sub-banda de codificação em uma ordem descendente, e para a sub-bandas de codificação de mesma importância, preferencialmente lançar os bits codificados de uma sub-banda de codificação de frequência mais baixa na corrente de código.
16. Sistema de decodificação hierárquica de áudio, caracterizado pelo fato de que compreende: um demultiplexador de corrente de bits, uma unidade de decodificação de envelope de amplitude de camada de núcleo, uma unidade de alocação de bits de camada de núcleo, e uma unidade de decodificação e de quantização inversa da camada de núcleo; compreendendo o sistema ainda: uma unidade de decodificação de envelope de amplitude de camada estendida, uma unidade de geração de envelope de amplitude de sinal residual de camada de núcleo, uma unidade de alocação de bits de camada estendida, uma unidade de decodificação e quantização inversa de sinal de codificação de camada estendida, uma unidade de geração de coeficientes do domínio de frequência, uma unidade de preenchimento com ruído e uma unidade de Transformada Discreta de Cossenos Modificada Inversa (IMDCT); sendo que: a unidade de decodificação de envelope de amplitude de camada de núcleo é configurada para decodificar os bits codificados de envelope de amplitude de sub-bandas de codificação de uma camada de núcleo emitidos pelo demultiplexador de corrente de bits para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo; a unidade de alocação de bits da camada de núcleo é configurada para alocar bits à camada de núcleo para obter um número de alocação de bits de cada sub-banda de codificação da camada de núcleo; a unidade de decodificação e quantização inversa da camada de núcleo é configurada para calcular o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada de núcleo de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo, e para decodificar, quantizar inversamente e normalizar inversamente os bits codificados dos coeficientes do domínio de frequência de camada de núcleo emitidos pelo demultiplexador de corrente de bits usando o número de alocação de bits e o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada de núcleo para obter os coeficientes do domínio de frequência da camada de núcleo; a unidade de decodificação de envelope de amplitude de camada estendida é configurada para decodificar os bits codificados do envelope de amplitude dos coeficientes do domínio de frequência da camada de núcleo emitidos pelo demultiplexador de corrente de bits para obter um expoente de quantização de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada de núcleo; a unidade de geração de envelope de amplitude de sinal residual de camada de núcleo é configurada para calcular um expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada de núcleo e o número de alocação de bits de uma sub-banda de codificação correspondente; a unidade de alocação de bits da camada estendida é configurada para alocar bits a uma camada estendida de acordo com o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual e o expoente de quantização de envelope de amplitude de cada sub-banda de codificação dos coeficientes do domínio de frequência de camada estendida para obter um número de alocação de bits de cada sub-banda de codificação do sinal de codificação de camada estendida; a unidade de decodificação e quantização inversa do sinal de codificação de camada estendida é configurada para calcular o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida usando o expoente de quantização de envelope de amplitude de cada sub-banda de codificação da camada estendida, e para decodificar, quantizar inversamente e normalizar inversamente os bits codificados do sinal de codificação de camada estendida emitidos pelo demultiplexador de corrente de bits usando o número de alocação de bits e o valor de envelope de amplitude de quantização de cada sub-banda de codificação da camada estendida para obter o sinal de codificação de camada estendida; a unidade de geração de coeficientes do domínio de frequência é configurada para reordenar o sinal de codificação de camada estendida emitido pela unidade de decodificação e quantização inversa de sinal de codificação de camada estendida de acordo com uma ordem das bandas de frequência, e então para efetuar o cálculo da soma com os coeficientes do domínio de frequência de camada de núcleo emitidos pela unidade de decodificação e quantização inversa do sinal de codificação de camada de núcleo para obter valores de saída dos coeficientes do domínio de frequência; a unidade de preenchimento com ruído é configurada para conduzir o preenchimento com ruído nas sub-bandas de codificação às quais nenhum bit codificado é alocado durante um processo de codificação; a unidade de IMDCT é configurada para conduzir IMDCT em todos os coeficientes do domínio de frequência para os quais foi efetuado o preenchimento com ruído para obter um sinal de áudio de saída; em que a unidade de geração de envelope de amplitude de sinal residual de camada de núcleo compreende ainda uma unidade de obtenção de um valor de modificação do expoente de quantização e uma unidade de cálculo do expoente de quantização de envelope de amplitude de sinal residual; a unidade de obtenção do valor de modificação do expoente de quantização é configurada para calcular o valor de modificação do expoente de quantização de cada sub-banda de codificação do sinal residual de acordo com o número de alocação de bits de cada subbanda de codificação da camada de núcleo e fazer um ajuste de acordo com um valor absoluto do coeficiente do domínio de frequência de uma sub-banda de codificação correspondente, sendo que o valor de modificação do expoente de quantização de cada sub-banda de codificação é superior ou igual a 0 e não diminui quando o número de alocação de bits da sub-banda de codificação correspondente da camada de núcleo aumenta, e se o número de alocação de bits de uma sub-banda de codificação da camada de núcleo for 0, o valor de modificação do expoente de quantização será 0, e se o número de alocação de bits da sub-banda de codificação da camada de núcleo for um número de alocação de bits máximo definido, o valor de envelope de amplitude do sinal residual na sub-banda de codificação será 0; a unidade de cálculo de expoente de quantização de envelope de amplitude de sinal residual é configurada para conduzir um cálculo de diferença entre o expoente de quantização de envelope de amplitude de cada sub-banda de codificação e o valor da modificação do expoente de quantização de uma sub-banda de codificação correspondente para obter o expoente de quantização de envelope de amplitude de cada sub-banda de codificação do sinal residual de camada de núcleo.
17. Sistema, de acordo com a reivindicação 16, caracterizado pelo fato de que a unidade de decodificação e quantização inversa do sinal de codificação da camada estendida é configurada de modo tal, que uma ordem para a decodificação de diversas sub-bandas do sinal de codificação de camada estendida é determinada por um valor inicial de importância de cada sub-banda de codificação, uma sub-banda de codificação com uma importância maior é decodificada preferencialmente, e se houver duas sub-bandas de codificação com a mesma importância, então será preferencialmente decodificada uma sub-banda de codificação de frequência mais baixa, um número de bits decodificados é calculado durante a decodificação e a decodificação é terminada quando o número de bits decodificados satisfaz as exigências em um número total de bits.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102498557A CN102081927B (zh) | 2009-11-27 | 2009-11-27 | 一种可分层音频编码、解码方法及系统 |
CN200910249855.7 | 2009-11-27 | ||
PCT/CN2010/078126 WO2011063694A1 (zh) | 2009-11-27 | 2010-10-26 | 一种可分层音频编码、解码方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
BR112012012573A2 BR112012012573A2 (pt) | 2020-12-01 |
BR112012012573B1 true BR112012012573B1 (pt) | 2021-10-19 |
Family
ID=44065854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112012012573-7A BR112012012573B1 (pt) | 2009-11-27 | 2010-10-26 | Método e sistema de codificação, decodificação hierárquicas de áudio |
Country Status (8)
Country | Link |
---|---|
US (1) | US8694325B2 (pt) |
EP (1) | EP2482052B1 (pt) |
JP (1) | JP5192099B2 (pt) |
CN (1) | CN102081927B (pt) |
BR (1) | BR112012012573B1 (pt) |
HK (1) | HK1171079A1 (pt) |
RU (1) | RU2509380C2 (pt) |
WO (1) | WO2011063694A1 (pt) |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5850216B2 (ja) | 2010-04-13 | 2016-02-03 | ソニー株式会社 | 信号処理装置および方法、符号化装置および方法、復号装置および方法、並びにプログラム |
JP5707842B2 (ja) | 2010-10-15 | 2015-04-30 | ソニー株式会社 | 符号化装置および方法、復号装置および方法、並びにプログラム |
CA2827000C (en) | 2011-02-14 | 2016-04-05 | Jeremie Lecomte | Apparatus and method for error concealment in low-delay unified speech and audio coding (usac) |
PL3471092T3 (pl) | 2011-02-14 | 2020-12-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Dekodowanie pozycji impulsów ścieżek sygnału audio |
SG192746A1 (en) | 2011-02-14 | 2013-09-30 | Fraunhofer Ges Forschung | Apparatus and method for processing a decoded audio signal in a spectral domain |
AU2012217216B2 (en) | 2011-02-14 | 2015-09-17 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for coding a portion of an audio signal using a transient detection and a quality result |
AU2012217153B2 (en) | 2011-02-14 | 2015-07-16 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion |
CN102959620B (zh) | 2011-02-14 | 2015-05-13 | 弗兰霍菲尔运输应用研究公司 | 利用重迭变换的信息信号表示 |
ES2534972T3 (es) | 2011-02-14 | 2015-04-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Predicción lineal basada en esquema de codificación utilizando conformación de ruido de dominio espectral |
CN103534754B (zh) * | 2011-02-14 | 2015-09-30 | 弗兰霍菲尔运输应用研究公司 | 在不活动阶段期间利用噪声合成的音频编解码器 |
MY159444A (en) | 2011-02-14 | 2017-01-13 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V | Encoding and decoding of pulse positions of tracks of an audio signal |
RU2464649C1 (ru) * | 2011-06-01 | 2012-10-20 | Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." | Способ обработки звукового сигнала |
EP2772912B1 (en) * | 2011-10-28 | 2016-08-10 | Panasonic Intellectual Property Corporation of America | Audio encoding apparatus, audio decoding apparatus, audio encoding method, and audio decoding method |
WO2013118476A1 (ja) * | 2012-02-10 | 2013-08-15 | パナソニック株式会社 | 音響/音声符号化装置、音響/音声復号装置、音響/音声符号化方法および音響/音声復号方法 |
KR101398189B1 (ko) * | 2012-03-27 | 2014-05-22 | 광주과학기술원 | 음성수신장치 및 음성수신방법 |
HUE033069T2 (hu) | 2012-03-29 | 2017-11-28 | ERICSSON TELEFON AB L M (publ) | Harmonikus hangjelek átalakítási kódolása/dekódolása |
CN106409299B (zh) * | 2012-03-29 | 2019-11-05 | 华为技术有限公司 | 信号编码和解码的方法和设备 |
CN104737227B (zh) * | 2012-11-05 | 2017-11-10 | 松下电器(美国)知识产权公司 | 语音音响编码装置、语音音响解码装置、语音音响编码方法和语音音响解码方法 |
CN105976824B (zh) | 2012-12-06 | 2021-06-08 | 华为技术有限公司 | 信号解码的方法和设备 |
KR102200643B1 (ko) * | 2012-12-13 | 2021-01-08 | 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 | 음성 음향 부호화 장치, 음성 음향 복호 장치, 음성 음향 부호화 방법 및 음성 음향 복호 방법 |
CN110827841B (zh) | 2013-01-29 | 2023-11-28 | 弗劳恩霍夫应用研究促进协会 | 音频解码器 |
RU2676242C1 (ru) * | 2013-01-29 | 2018-12-26 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Декодер для формирования аудиосигнала с улучшенной частотной характеристикой, способ декодирования, кодер для формирования кодированного сигнала и способ кодирования с использованием компактной дополнительной информации для выбора |
US9560386B2 (en) * | 2013-02-21 | 2017-01-31 | Mozilla Corporation | Pyramid vector quantization for video coding |
US9940942B2 (en) * | 2013-04-05 | 2018-04-10 | Dolby International Ab | Advanced quantizer |
CN104103276B (zh) * | 2013-04-12 | 2017-04-12 | 北京天籁传音数字技术有限公司 | 一种声音编解码装置及其方法 |
US9665541B2 (en) | 2013-04-25 | 2017-05-30 | Mozilla Corporation | Encoding video data using reversible integer approximations of orthonormal transforms |
SG11201510162WA (en) | 2013-06-10 | 2016-01-28 | Fraunhofer Ges Forschung | Apparatus and method for audio signal envelope encoding, processing and decoding by modelling a cumulative sum representation employing distribution quantization and coding |
JP6224233B2 (ja) | 2013-06-10 | 2017-11-01 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 分配量子化及び符号化を使用したオーディオ信号包絡の分割によるオーディオ信号包絡符号化、処理及び復号化の装置と方法 |
CN108198564B (zh) | 2013-07-01 | 2021-02-26 | 华为技术有限公司 | 信号编码和解码方法以及设备 |
EP2830061A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for encoding and decoding an encoded audio signal using temporal noise/patch shaping |
EP2830060A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Noise filling in multichannel audio coding |
RU2636697C1 (ru) * | 2013-12-02 | 2017-11-27 | Хуавэй Текнолоджиз Ко., Лтд. | Устройство и способ кодирования |
AU2014371411A1 (en) | 2013-12-27 | 2016-06-23 | Sony Corporation | Decoding device, method, and program |
PT3111560T (pt) | 2014-02-27 | 2021-07-08 | Ericsson Telefon Ab L M | Método e aparelho para indexação e desindexação de quantificação vetorial em pirâmide de vetores de amostra de áudio/vídeo |
CN106463143B (zh) | 2014-03-03 | 2020-03-13 | 三星电子株式会社 | 用于带宽扩展的高频解码的方法及设备 |
US9564136B2 (en) * | 2014-03-06 | 2017-02-07 | Dts, Inc. | Post-encoding bitrate reduction of multiple object audio |
SG11201609834TA (en) | 2014-03-24 | 2016-12-29 | Samsung Electronics Co Ltd | High-band encoding method and device, and high-band decoding method and device |
CN105096957B (zh) | 2014-04-29 | 2016-09-14 | 华为技术有限公司 | 处理信号的方法及设备 |
EP2980792A1 (en) * | 2014-07-28 | 2016-02-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for generating an enhanced signal using independent noise-filling |
JPWO2016052191A1 (ja) * | 2014-09-30 | 2017-07-20 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
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 |
US10586546B2 (en) * | 2018-04-26 | 2020-03-10 | Qualcomm Incorporated | Inversely enumerated pyramid vector quantizers for efficient rate adaptation in audio coding |
US10573331B2 (en) * | 2018-05-01 | 2020-02-25 | Qualcomm Incorporated | Cooperative pyramid vector quantizers for scalable audio coding |
US10580424B2 (en) | 2018-06-01 | 2020-03-03 | Qualcomm Incorporated | Perceptual audio coding as sequential decision-making problems |
US10734006B2 (en) | 2018-06-01 | 2020-08-04 | Qualcomm Incorporated | Audio coding based on audio pattern recognition |
CN113113032B (zh) * | 2020-01-10 | 2024-08-09 | 华为技术有限公司 | 一种音频编解码方法和音频编解码设备 |
WO2022104588A1 (en) * | 2020-11-18 | 2022-05-27 | Qualcomm Incorporated | Subband level constellation shaping |
CN115795067B (zh) * | 2023-02-08 | 2023-04-21 | 济宁市质量计量检验检测研究院(济宁半导体及显示产品质量监督检验中心、济宁市纤维质量监测中心) | 一种用于温度测量数据的存储方法 |
CN118571235A (zh) * | 2023-02-28 | 2024-08-30 | 华为技术有限公司 | 音频编解码方法及相关装置 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6289308B1 (en) * | 1990-06-01 | 2001-09-11 | U.S. Philips Corporation | Encoded wideband digital transmission signal and record carrier recorded with such a signal |
US5684920A (en) * | 1994-03-17 | 1997-11-04 | Nippon Telegraph And Telephone | Acoustic signal transform coding method and decoding method having a high efficiency envelope flattening method therein |
RU2214047C2 (ru) * | 1997-11-19 | 2003-10-10 | Самсунг Электроникс Ко., Лтд. | Способ и устройство для масштабируемого кодирования/декодирования аудиосигналов |
DE69926821T2 (de) * | 1998-01-22 | 2007-12-06 | Deutsche Telekom Ag | Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen |
CN100346392C (zh) * | 2002-04-26 | 2007-10-31 | 松下电器产业株式会社 | 编码设备、解码设备、编码方法和解码方法 |
KR101000345B1 (ko) * | 2003-04-30 | 2010-12-13 | 파나소닉 주식회사 | 음성 부호화 장치, 음성 복호화 장치 및 그 방법 |
US8526412B2 (en) * | 2003-10-24 | 2013-09-03 | Qualcomm Incorporated | Frequency division multiplexing of multiple data streams in a wireless multi-carrier communication system |
ATE403217T1 (de) * | 2004-04-28 | 2008-08-15 | Matsushita Electric Ind Co Ltd | Hierarchische kodierungsanordnung und hierarchisches kodierungsverfahren |
EP1939862B1 (en) * | 2004-05-19 | 2016-10-05 | Panasonic Intellectual Property Corporation of America | Encoding device, decoding device, and method thereof |
EP1806737A4 (en) | 2004-10-27 | 2010-08-04 | Panasonic Corp | TONE CODIER AND TONE CODING METHOD |
ES2476992T3 (es) * | 2004-11-05 | 2014-07-15 | Panasonic Corporation | Codificador, descodificador, método de codificación y método de descodificaci�n |
US8265929B2 (en) | 2004-12-08 | 2012-09-11 | Electronics And Telecommunications Research Institute | Embedded code-excited linear prediction speech coding and decoding apparatus and method |
US7937272B2 (en) * | 2005-01-11 | 2011-05-03 | Koninklijke Philips Electronics N.V. | Scalable encoding/decoding of audio signals |
FR2888699A1 (fr) * | 2005-07-13 | 2007-01-19 | France Telecom | Dispositif de codage/decodage hierachique |
EP1912206B1 (en) * | 2005-08-31 | 2013-01-09 | Panasonic Corporation | Stereo encoding device, stereo decoding device, and stereo encoding method |
KR100738077B1 (ko) * | 2005-09-28 | 2007-07-12 | 삼성전자주식회사 | 계층적 오디오 부호화 및 복호화 장치와 방법 |
WO2007043642A1 (ja) * | 2005-10-14 | 2007-04-19 | Matsushita Electric Industrial Co., Ltd. | スケーラブル符号化装置、スケーラブル復号装置、およびこれらの方法 |
US7835904B2 (en) * | 2006-03-03 | 2010-11-16 | Microsoft Corp. | Perceptual, scalable audio compression |
US8306827B2 (en) * | 2006-03-10 | 2012-11-06 | Panasonic Corporation | Coding device and coding method with high layer coding based on lower layer coding results |
FR2898443A1 (fr) * | 2006-03-13 | 2007-09-14 | France Telecom | Procede de codage d'un signal audio source, dispositif de codage, procede et dispositif de decodage, signal, produits programme d'ordinateur correspondants |
BRPI0721079A2 (pt) * | 2006-12-13 | 2014-07-01 | Panasonic Corp | Dispositivo de codificação, dispositivo de decodificação e método dos mesmos |
CN101206860A (zh) * | 2006-12-20 | 2008-06-25 | 华为技术有限公司 | 一种可分层音频编解码方法及装置 |
JP4871894B2 (ja) | 2007-03-02 | 2012-02-08 | パナソニック株式会社 | 符号化装置、復号装置、符号化方法および復号方法 |
PT2186089T (pt) * | 2007-08-27 | 2019-01-10 | Ericsson Telefon Ab L M | Método e dispositivo para descodificação espetral percetual de um sinal áudio que inclui preenchimento de buracos espetrais |
KR101449431B1 (ko) * | 2007-10-09 | 2014-10-14 | 삼성전자주식회사 | 계층형 광대역 오디오 신호의 부호화 방법 및 장치 |
CN101562015A (zh) | 2008-04-18 | 2009-10-21 | 华为技术有限公司 | 音频处理方法及装置 |
CN101521014B (zh) * | 2009-04-08 | 2011-09-14 | 武汉大学 | 音频带宽扩展编解码装置 |
US20130030796A1 (en) * | 2010-01-14 | 2013-01-31 | Panasonic Corporation | Audio encoding apparatus and audio encoding method |
WO2011156905A2 (en) * | 2010-06-17 | 2011-12-22 | Voiceage Corporation | Multi-rate algebraic vector quantization with supplemental coding of missing spectrum sub-bands |
-
2009
- 2009-11-27 CN CN2009102498557A patent/CN102081927B/zh active Active
-
2010
- 2010-10-26 BR BR112012012573-7A patent/BR112012012573B1/pt active IP Right Grant
- 2010-10-26 WO PCT/CN2010/078126 patent/WO2011063694A1/zh active Application Filing
- 2010-10-26 JP JP2012535611A patent/JP5192099B2/ja active Active
- 2010-10-26 RU RU2012119783/08A patent/RU2509380C2/ru active
- 2010-10-26 EP EP10832601.8A patent/EP2482052B1/en active Active
- 2010-10-26 US US13/505,064 patent/US8694325B2/en active Active
-
2012
- 2012-11-20 HK HK12111842.3A patent/HK1171079A1/xx unknown
Also Published As
Publication number | Publication date |
---|---|
EP2482052A1 (en) | 2012-08-01 |
EP2482052A4 (en) | 2013-04-24 |
CN102081927A (zh) | 2011-06-01 |
WO2011063694A1 (zh) | 2011-06-03 |
RU2012119783A (ru) | 2014-01-10 |
US8694325B2 (en) | 2014-04-08 |
BR112012012573A2 (pt) | 2020-12-01 |
US20120226505A1 (en) | 2012-09-06 |
JP5192099B2 (ja) | 2013-05-08 |
CN102081927B (zh) | 2012-07-18 |
RU2509380C2 (ru) | 2014-03-10 |
HK1171079A1 (en) | 2013-03-15 |
JP2013511054A (ja) | 2013-03-28 |
EP2482052B1 (en) | 2014-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112012012573B1 (pt) | Método e sistema de codificação, decodificação hierárquicas de áudio | |
BR112012021359B1 (pt) | Método de codificação hierárquica de áudio, método de descodificação hierárquica de áudio, método de codificação hierárquica de áudio para sinais transitórios, método de descodificação hierárquica para sinais transitórios , e, sistema de codificação hierárquica de áudio | |
BR112012009714B1 (pt) | método de codificação de áudio de quantização de vetor de retículo, método de decodificação de áudio de quantização de vetor de retículo, sistema de cotificação de áudio de quantização de vetor de retículo e sistema de decodificação de áudio de quantização de vetor de retículo | |
BR112012026324B1 (pt) | Codificador de aúdio ou vídeo, decodificador de aúdio ou vídeo e métodos relacionados para o processamento do sinal de aúdio ou vídeo de múltiplos canais usando uma direção de previsão variável | |
US20180261234A1 (en) | Audio signal coding and decoding method and device | |
KR101717006B1 (ko) | 오디오 프로세싱 시스템 | |
JP6388624B2 (ja) | 方法、符号化器、復号化器、及び移動体機器 | |
ES2970676T3 (es) | Dispositivo de codificación de audio vocal, dispositivo de decodificación de audio vocal, procedimiento decodificación de audio vocal, y procedimiento de decodificación de audio vocal | |
BR122022025643B1 (pt) | Codificador de áudio para codificação de um sinal multicanal e decodificador de áudio para decodificação de um sinal de áudio codificado | |
BRPI0709235B1 (pt) | Decodificador de áudio, método de decodificação de áudio, receptor para receber um sinal de n canais, sistema de transmissão para transmitir um sinal de áudio, método para receber um sinal de áudio, método para transmitir e receber um sinal de áudio, mídia de armazenamento legível por computador, e, dispositivo de reprodução de áudio | |
PT2016583E (pt) | Método e dispositivo para codificação desprovida de perdas de um sinal de origem, utilizando um fluxo de dados codificado com perdas e um fluxo de dados de extensão desprovido de perdas | |
BRPI0923850B1 (pt) | Aparelho que decodifica um sinal de áudio de canal múltiplo e método para a decodificação e codificação de um sinal de áudio de canal múltiplo | |
BR112013026850B1 (pt) | Aparelhos de codificação e decodificação de áudio/fala e métodos decodificação e decodificação de áudio/fala | |
PT2684190E (pt) | Preenchimento de sub-vectores não codificados em sinais de aúdio codificados por transformação | |
BR112019014125A2 (pt) | integração retrocompatível de transpositor harmônico para reconstrução de alta frequência de sinais de áudio | |
US20130035943A1 (en) | Encoding device, decoding device, encoding method and decoding method | |
BR112020004909A2 (pt) | método e dispositivo para distribuir, de forma eficiente, um bit-budget em um codec celp | |
US20090018823A1 (en) | Speech coding | |
EP2573766B1 (en) | Encoding method, decoding method, encoding device, decoding device, program, and recording medium | |
JP5544371B2 (ja) | 符号化装置、復号装置およびこれらの方法 | |
ES2708581T3 (es) | Codificación de audio multicanal usando predicción compleja e información de forma de ventana | |
BR122020026204B1 (pt) | Codificador de áudio ou vídeo, decodificador de áudio ou vídeo e métodos relacionados para o processamento do sinal de áudio ou vídeo de múltiplos canais usando uma direção de previsão variável | |
Jia et al. | A novel embedded speech and audio codec based on ITU-T Recommendation G. 722.1 | |
BR122019023345B1 (pt) | Sistema de codificação de áudio, decodificador de áudio, método de codificação de áudio e método de decodificação de áudio | |
BR122012021663A2 (pt) | Dispositivo de codificação de voz, dispositivo de decodificação de voz, método de codificação de voz, método de decodificação de voz, programa de codificação de voz e programa de decodificação de voz |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B08F | Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette] |
Free format text: REFERENTE A 9A ANUIDADE. |
|
B08G | Application fees: restoration [chapter 8.7 patent gazette] | ||
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 26/10/2010, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO. |