Campo Técnico
[0001] A presente invenção refere-se a um aparelho de codifica ção de voz/áudio, a um aparelho de decodificação de voz/áudio, a um método de codificação de voz/áudio e a um método de decodificação de voz/áudio com o uso de um esquema de codificação de transformação.
Técnica Antecedente
[0002] Como um esquema capaz de codificar de maneira eficiente um sinal de voz ou um sinal de música em uma banda completa (FB) de 0,02 a 20 kHz, há uma técnica padronizada em ITU-T (setor de padronização de telecomunicação de união de telecomunicação internacional). Essa técnica transforma um sinal de entrada em um sinal de domínio de frequência e codifica uma banda de até 20 kHz (codificação de transformação).
[0003] Aqui, codificação de transformação é um esquema de codi ficação que transforma um sinal de entrada a partir de um domínio de tempo em um domínio de frequência com o uso de transformação de tempo/frequência, como a transformação de cosseno distinto (DCT) ou transformação de cosseno distinto modificada (MDCT) para permitir que um sinal seja mapeado em correspondência precisa com características auditivas.
[0004] Na codificação de transformação, um coeficiente espectral é dividido em uma pluralidade de sub-bandas de frequência. Na codificação de cada sub-banda, a alocação de mais bits de quantização para uma banda que é perceptualmente importante os ouvidos humanos possibilitam melhorar a qualidade geral do som.
[0005] A fim de alcançar esse objetivo, os estudos são realizados quanto aos esquemas de alocação de bit eficientes e, por exemplo, uma técnica apresentada na literatura de não patente (mais adiante neste documento, chamada de "NPL") 1 é conhecida. Mais adiante neste documento, o esquema de alocação de bit apresentado na literatura de patente (mais adiante neste documento, chamada de "PTL") 1 será descrito com o uso da figura 1 e da figura 2.
[0006] A figura 1 é um diagrama de blocos que ilustra uma confi guração de um aparelho de codificação de voz/áudio apresentado em PTL 1. Um sinal de entrada com amostra em 48 kHz é inserido no detector temporário 11 e na seção de transformação 12 do aparelho de codificação de voz/áudio.
[0007] O detector temporário 11 detecta, a partir do sinal de entra da, ou um quadro temporário que corresponde a uma borda anterior ou uma borda posterior de voz ou um quadro estacionário que corresponde a uma seção de voz além daquela, e a seção de transformação 12 aplica, ao quadro do sinal de entrada, a transformação de resolução de alta frequência ou a transformação de resolução de baixa frequência dependendo de se o quadro detectado pelo detector temporário 11 é um quadro temporário ou um quadro estacionário, e adquires um coeficiente espectral (ou coeficiente de transformação).
[0008] A seção de avaliação de norma 13 divide o coeficiente es pectral obtido na seção de transformação 12 em bandas de diferentes larguras de banda. A seção de avaliação de norma 13 avalia uma norma (ou energia) de cada banda dividida.
[0009] A seção de quantização de norma 14 determina um enve lope espectral constituído pelas normas de todas as bandas com base na norma de cada banda avaliada pela seção de avaliação de norma 13 e quantiza o envelope espectral determinado.
[0010] A seção de normalização de espectro 15 normaliza o coefi ciente espectral obtido pela seção de transformação 12 de acordo com a norma quantizada pela seção de quantização de norma 14.
[0011] A seção de ajuste de norma 16 ajusta a norma quantizada pela seção de quantização de norma 14 com base na ponderação espectral adaptiva.
[0012] A seção de alocação de bit 17 aloca os bits disponíveis pa ra cada banda em um quadro com o uso da norma de quantização ajustada pela seção de ajuste de norma 16.
[0013] A seção de codificação de vetor de retícula 18 realiza a co dificação de vetor de retícula no coeficiente espectral normalizado pela seção de normalização de espectro 15 com o uso de bits alocados para cada banda pela seção de alocação de bit 17.
[0014] A seção de ajuste de nível de ruído 19 avalia o nível do co eficiente espectral antes da codificação na seção de codificação de vetor de retícula 18 e codifica o nível avaliado. Um índice de ajuste de nível de ruído é obtido dessa maneira.
[0015] O multiplexador 20 multiplexa uma configuração de quadro do sinal de entrada adquirido pela seção de transformação 12, ou seja, uma sinalização de sinal temporário que indica se o quadro é um quadro estacionário ou quadro temporário, a norma quantizada pela seção de quantização de norma 14, o vetor de codificação de retícula obtido pela seção de codificação de vetor de retícula 18 e o índice de ajuste de nível de ruído obtido pela seção de ajuste de nível de ruído 19, e forma uma corrente de bit e transmite a corrente de bit a um aparelho de decodificação de voz/áudio.
[0016] A figura 2 é um diagrama de blocos que ilustra uma confi guração do aparelho de decodificação de voz/áudio apresentado em PTL 1. O aparelho de decodificação de voz/áudio recebe a corrente de bit transmitido a partir do aparelho de codificação de voz/áudio e de- multiplexador 21 demultiplexa a corrente de bit.
[0017] A seção de desquantização de norma 22 desquantiza a norma quantizada, adquire um envelope espectral constituído por normas de todas as bandas, e a seção de ajuste de norma 23 ajusta a norma desquantizada pela seção de desquantização de norma 22 com base na ponderação espectral adaptiva.
[0018] A seção de alocação de bit 24 aloca os bits disponíveis pa ra cada banda em um quadro com o uso das normas ajustadas pela seção de ajuste de norma 23. Ou seja, a seção de alocação de bit 24 calcula novamente a alocação de bit indispensável para decodificar o código de vetor de retícula do coeficiente espectral normalizado.
[0019] A seção de decodificação de retícula 25 decodifica uma si nalização de sinal temporário, decodifica o vetor de codificação de re- tícula com base em uma configuração de quadro indicada pela sinalização de sinal temporário decodificado e os bits alocados pela seção de alocação de bit 24 e adquire um coeficiente espectral.
[0020] O gerador de preenchimento espectral 26 gera novamente um coeficiente espectral de baixa frequência ao qual nenhum bit foi alocado com o uso de um livro-código criado com base no coeficiente espectral decodificado pela seção de decodificação de retícula 25. O gerador de preenchimento espectral 26 ajusta o nível do coeficiente espectral gerado novamente com o uso de um índice de ajuste de nível de ruído. Além disso, o gerador de preenchimento espectral 26 gera novamente um coeficiente espectral de alta frequência com o uso de um coeficiente espectral codificado de baixa frequência.
[0021] O adicionador 27 adiciona até o coeficiente espectral deco dificado e o coeficiente espectral gerado novamente, e gera um coeficiente espectral normalizado.
[0022] A seção de formação de envelope 28 aplica o envelope es pectral desquantizado pela seção de desquantização de norma 22 ao coeficiente espectral normalizado gerado pelo adicionador 27 e gera um coeficiente espectral de banda completa.
[0023] A seção de transformação inversa 29 aplica a transforma- ção inversa, como a transformação de cosseno distinto modificada inversa (IMDCT) ao coeficiente espectral de banda completa gerado pela seção de formação de envelope 28 para transformá-lo em um sinal de domínio de tempo. Aqui, a transformação inversa com resolução de alta frequência é aplicada a um caso com um quadro estacionário e a transformação inversa com resolução de baixa frequência é aplicada a um caso com um quadro temporário.
[0024] Em G.719, os coeficientes espectrais são divididos em gru pos de espectro. Cada grupo de espectro é dividido em bandas de subvetores de comprimento igual conforme mostrado na figura 3. Os subvetores são diferentes em comprimento a partir de um grupo para outro e esse comprimento aumenta à medida que a frequência aumenta. Com relação à resolução de transformação, a resolução de frequência mais alta é usada para baixas frequências, enquanto a resolução de frequência mais baixa é usada para altas frequências. Conforme descrito em G.719, o agrupamento permite um uso eficiente de "bit-budget" disponível durante a codificação.
[0025] Em G.719, o esquema de alocação de bit é idêntico em um aparelho de codificação e um aparelho de decodificação. Aqui, o esquema de alocação de bit será descrito com o uso da figura 4.
[0026] Conforme mostrado na figura 4, na etapa (mais adiante neste documento abreviada como “ST”) 31, as normas quantizadas são ajustadas antes da alocação de bit para ajustar os efeitos de ponderação e mascaramento psicoacústico.
[0027] Na ST32, as sub-bandas que têm uma norma máxima são identificadas dentre todas as sub-bandas e na ST33, um bit é alocado para cada coeficiente espectral para as sub-bandas que têm a norma máxima. Ou seja, o máximo de bits como coeficientes espectrais são alocados.
[0028] Na ST34, as normas são reduzidas de acordo com os bits alocados, e na ST35, determina-se se o número restante de bits que podem ser alocados é 8 ou mais. Quando o número de bits que podem ser alocados é de 8 ou mais, o fluxo retorna para ST32 e quando o número restante de bits que podem ser alocados é inferior a 8, o processo de alocação de bits é terminado.
[0029] Assim, no esquema de alocação de bit, os bits disponíveis dentro de um quadro são alocados entre as sub-bandas com o uso das normas de quantização ajustadas. Os coeficientes espectrais normalizados são codificados pela codificação de vetor de retícula com o uso dos bits alocados para cada sub-banda. Lista de Citação Literatura de Patente NPL 1
[0030] Recomendação ITU-T G.719, “Low-complexity full-band au dio coding for high-quality conversational applications”, ITU-T, 2009.
Sumário da Invenção
Problema Técnico
[0031] No entanto, o esquema de alocação de bit acima não con sidera as características de sinal de entrada de consideração ao agrupar as bandas de espectro e, portanto, tem um problema pelo fato de que a alocação de bit eficiente não é possível e o aprimoramento adicional de qualidade de som não pode ser esperado.
[0032] Um objetivo da presente invenção é fornecer um aparelho de codificação de voz/áudio, um aparelho de decodificação de voz/áudio, um método de codificação de voz/áudio e um método de decodificação de voz/áudio capaz de realizar a alocação de bit eficiente e aprimorar a qualidade de som.
Solução para o Problema
[0033] Um aparelho de codificação de voz/áudio da presente in venção inclui: uma seção de transformação que transforma um sinal de entrada a partir de um domínio de tempo em um domínio de frequência; uma seção de avaliação que avalia um envelope de energia que representa um nível de energia para cada de uma pluralidade de sub-bandas obtido pela divisão de um espectro de frequência do sinal de entrada; uma seção de quantização que quantiza os envelopes de energia; uma seção de determinação de grupo que agrupa os envelopes de energia quantizados em uma pluralidade de grupos; uma primeira seção de alocação de bit que aloca os bits para a pluralidade de grupos; uma segunda seção de alocação de bit que aloca os bits alocados para a pluralidade de grupos para as sub-bandas de grupo em grupo; e uma seção de codificação que codifica o espectro de frequência com o uso de bits alocados para as sub-bandas.
[0034] Um aparelho de decodificação de voz/áudio de acordo com a presente invenção inclui: uma seção de desquantização que des- quantiza um envelope espectral quantizado; uma seção de determinação de grupo que agrupa os envelopes espectrais quantizados em uma pluralidade de grupos; uma primeira seção de alocação de bit que aloca os bits para a pluralidade de grupos; uma segunda seção de alocação de bit que aloca os bits alocados para a pluralidade de grupos para as sub-bandas de grupo em grupo; uma seção de decodifica- ção que decodifica um espectro de frequência d um sinal de voz/áudio com o uso de os bits alocados para a sub-bandas; uma seção de formação de envelope que aplica o envelope espectral desquantizado ao espectro de frequência decodificado e reproduz um espectro decodificado; e uma seção de transformação inversa que transforma de maneira inversa o espectro decodificado a partir de um domínio de frequência para um domínio de tempo.
[0035] Um método de codificação de voz/áudio de acordo com a presente invenção inclui: transformar um sinal de entrada a partir de um domínio de tempo para um domínio de frequência; avaliar um en velope de energia que representa um nível de energia para cada de uma pluralidade de sub-bandas obtido pela divisão de um espectro de frequência do sinal de entrada; quantizar os envelopes de energia; agrupar os envelopes de energia quantizados em uma pluralidade de grupos; alocar os bits para a pluralidade de grupos; alocar os bits alocados para a pluralidade de grupos para as sub-bandas de grupo em grupo; e codificar o espectro de frequência com o uso de bits alocados para as sub-bandas.
[0036] Um método de decodificação de voz/áudio de acordo com a presente invenção inclui: desquantizar um envelope espectral quanti- zado; agrupar o envelope espectral quantizado em uma pluralidade de grupos; alocar os bits para a pluralidade de grupos; alocar os bits alocados para a pluralidade de grupos para as sub-bandas de grupo em grupo; decodificar um espectro de frequência de um sinal de voz/áudio com o uso de os bits alocados para a sub-bandas; aplicar o envelope espectral desquantizado ao espectro de frequência decodificado e re-produzir um espectro decodificado; e transformar de maneira inversa o espectro decodificado a partir de um domínio de frequência em um domínio de tempo.
Efeitos Vantajosos da Invenção
[0037] De acordo com a presente invenção, é possível realizar a alocação de bit eficiente e melhorar a qualidade de som. Breve Descrição dos Desenhos a figura 1 é um diagrama de blocos que ilustra uma configuração de um aparelho de codificação de voz/áudio apresentado em PTL 1; a figura 2 é um diagrama de blocos que ilustra uma configuração de um aparelho de decodificação de voz/áudio apresentado em PTL 1; a figura 3 é um diagrama que ilustra o agrupamento de coe- ficientes espectrais em um modo estacionário apresentado em PTL 1; a figura 4 é um fluxograma que ilustra um esquema de alocação de bit apresentado em PTL 1; a figura 5 é um diagrama de blocos que ilustra uma configuração de um aparelho de codificação de voz/áudio de acordo com uma modalidade da presente invenção; a figura 6 é um diagrama de blocos que ilustra uma configuração de um aparelho de decodificação de voz/áudio de acordo com uma modalidade da presente invenção; a figura 7 é um diagrama de blocos que ilustra uma configuração interna da seção de alocação de bit mostrada na figura 5; as figuras 8A a 8C são diagramas fornecidos para descrever um método de agrupamento de acordo com uma modalidade da presente invenção; e a figura 9 é um diagrama que ilustra uma variância de norma.
Descrição das Modalidades
[0038] Mais adiante neste documento, as modalidades da presen te invenção serão descritas em detalhes com referência aos desenhos anexos. Modalidade
[0039] A figura 5 é um diagrama de blocos que ilustra uma confi guração do aparelho de codificação de voz/áudio 100 de acordo com uma modalidade da presente invenção. Um sinal de entrada com amostra em 48 kHz é inserido no detector temporário 101 e na seção de transformação 102 do aparelho de codificação de voz/áudio 100.
[0040] O detector temporário 101 detecta, a partir de um sinal de entrada, ou um quadro temporário que corresponde a uma borda anterior ou uma borda posterior de voz ou um quadro estacionário que corresponde a um seção de voz além daquele, e emite o resultado de de- tecção para a seção de transformação 102. A seção de transformação 102 aplica, ao quadro do sinal de entrada, a transformação de resolução de alta frequência ou a transformação de resolução de baixa frequência dependendo de se o resultado de detecção emitido a partir do detector temporário 101 é um quadro temporário ou quadro estacionário, e adquire um coeficiente espectral (ou coeficiente de transformação) e emite o coeficiente espectral à seção de avaliação de norma 103 e a seção de normalização de espectro 105. A seção de transformação 102 emite uma configuração de quadro que é o resultado de detecção emitido a partir do detector temporário 101, ou seja, uma sinalização de sinal temporário que indica se o quadro é um quadro estacionário ou um quadro temporário ao multiplexador 110.
[0041] A seção de avaliação de norma 103 divide o coeficiente es pectral emitido a partir da seção de transformação 102 em bandas de diferentes larguras de banda e avalia uma norma (ou energia) de cada banda dividida. A seção de avaliação de norma 103 emite a norma avaliada de cada banda para a seção de quantização de norma 104.
[0042] A seção de quantização de norma 104 determina um enve lope espectral constituído por normas de todas as bandas com base nas normas das respectivas bandas emitidas a partir da seção de avaliação de norma 103, quantiza o envelope espectral determinado e emite a envelope espectral quantizado à seção de normalização de espectro 105 e à seção de ajuste de norma 106.
[0043] A seção de normalização de espectro 105 normaliza o coe ficiente espectral emitido a partir da seção de transformação 102 de acordo com o envelope espectral quantizado emitido a partir da seção de quantização de norma 104 e emite um coeficiente espectral normalizado to seção de codificação de vetor de retícula 108.
[0044] A seção de ajuste de norma 106 ajusta o envelope espec tral quantizado emitido a partir da seção de quantização de norma 104 com base na ponderação espectral adaptiva e emite um envelope espectral quantizado ajustado à seção de alocação de bit 107.
[0045] A seção de alocação de bit 107 aloca os bits disponíveis para cada banda em um quadro com o uso do envelope espectral quantizado ajustado emitido a partir da seção de ajuste de norma 106 e emite os bits alocados à seção de codificação de vetor de retícula 108. Os detalhes da seção de alocação de bit 107 serão descritos adiante.
[0046] A seção de codificação de vetor de retícula 108 realiza a codificação de vetor de retícula no coeficiente espectral normalizado pela seção de normalização de espectro 105 com o uso de dos bits alocados para cada banda na seção de alocação de bit 107 e emite um vetor de codificação de retícula para a seção de ajuste de nível de ruído 109 e o multiplexador 110.
[0047] A seção de ajuste de nível de ruído 109 avalia o nível do coeficiente espectral antes da codificação na seção de codificação de vetor de retícula 108 e codifica o nível avaliado. Um índice de ajuste de nível de ruído é determinado dessa maneira. O índice de ajuste de nível de ruído é emitido ao multiplexador 110.
[0048] O multiplexador 110 multiplexa a sinalização de sinal tem porário emitida a partir da seção de transformação 102, o envelope espectral quantizado emitido a partir da seção de quantização de norma 104, o vetor de codificação de retícula emitido a partir da seção de codificação de vetor de retícula 108 e o índice de ajuste de nível de ruído emitido a partir da seção de ajuste de nível de ruído 109, e forma uma corrente de bit e transmite a corrente de bit a um aparelho de de- codificação de voz/áudio.
[0049] A figura 6 é um diagrama de blocos que ilustra uma confi guração do aparelho de decodificação de voz/áudio 200 de acordo com uma modalidade da presente invenção. Uma corrente de bit transmitida a partir do aparelho de codificação de voz/áudio 100 é recebida pelo aparelho de decodificação de voz/áudio 200 e demultiple- xada pelo demultiplexador 201.
[0050] A seção de desquantização de norma 202 desquantiza o envelope espectral quantizado (ou seja, a norma) emitido a partir do multiplexador, obtém um envelope espectral constituído por normas de todas as bandas e emite um envelope espectral obtido à seção de ajuste de norma 203.
[0051] A seção de ajuste de norma 203 ajusta o envelope espec tral emitido a partir da seção de desquantização de norma 202 com base na ponderação espectral adaptiva e emite o envelope espectral ajustado à seção de alocação de bit 204.
[0052] A seção de alocação de bit 204 aloca os bits disponíveis para cada banda em um quadro com o uso do envelope espectral emitido a partir da seção de ajuste de norma 203. Ou seja, a seção de alocação de bit 204 calcula novamente a alocação de bit indispensável para decodificar o código de vetor de retícula do coeficiente espectral normalizado. Os bits alocados são emitidos à seção de decodificação de retícula 205.
[0053] A seção de decodificação de retícula 205 decodifica o vetor de codificação de retícula emitido a partir da demultiplexador 201 com base em uma configuração de quadro indicada pela sinalização de sinal temporário emitido a partir da demultiplexador 201e os bits emitidos a partir da seção de alocação de bit 204 e adquire um coeficiente espectral. O coeficiente espectral é emitido ao gerador de preenchimento espectral 206 e ao adicionador 207.
[0054] O gerador de preenchimento espectral 206 gera novamente um coeficiente espectral de baixa frequência ao qual nenhum bit foi alocado com o uso de um livro-código criado com base no coeficiente espectral emitido a partir da seção de decodificação de retícula 205. O gerador de preenchimento espectral 206 ajusta o nível do gerado novamente coeficiente espectral com o uso do índice de ajuste de nível de ruído emitido a partir da demultiplexador 201. Além disso, o gerador de preenchimento espectral 206 gera novamente o coeficiente espectral não submetido à codificação de alta frequência com o uso de um coeficiente espectral codificado de baixa frequência. O coeficiente espectral de baixa frequência e de nível ajustado e coeficiente espectral de alta frequência e gerado novamente são emitidos ao adicionador 207.
[0055] O adicionador 207 adiciona o coeficiente espectral emitido a partir da seção de decodificação de retícula 205 e o coeficiente espectral emitido a partir do gerador de preenchimento espectral 206, gera um coeficiente espectral normalizado e emite um coeficiente espectral normalizado à seção de formação de envelope 208.
[0056] A seção de formação de envelope 208 aplica o envelope espectral emitido a partir da seção de desquantização de norma 202 ao coeficiente espectral normalizado gerado pelo adicionador 207 e gera um coeficiente espectral de banda completa (que corresponde ao espectro decodificado). O coeficiente espectral de banda completa gerado é emitido à seção de transformação inversa 209.
[0057] A seção de transformação inversa 209 aplica a transforma ção inversa, como a transformação de cosseno distinto modificada inversa (IMDCT) ao coeficiente espectral de banda completa emitido a partir da seção de formação de envelope 208, transforma o a um sinal de domínio de tempo e emite um sinal de saída. Aqui, a transformação inversa com a resolução de alta frequência é aplicada a um caso de um quadro estacionário e a transformação inversa com a resolução de baixa frequência é aplicada a um caso de um quadro temporário.
[0058] A seguir, os detalhes da seção de alocação de bit 107 se rão descritos com o uso da figura 7. Observa-se que a seção de alo- cação de bit 107 do aparelho de codificação de voz/áudio 100 é idêntica na configuração para a seção de alocação de bit 204 do aparelho de decodificação de voz/áudio 200 e, portanto, apenas a seção de alocação de bit 107 será descrita e a descrição da seção de alocação de bit 204 será omitida aqui.
[0059] A figura 7 é um diagrama de blocos que ilustra uma confi guração interna da seção de alocação de bit 107 mostrada na figura 5. A seção de identificação de banda de frequência dominante 301 identifica, com base no envelope espectral quantizado emitido a partir da seção de ajuste de norma 106, uma banda de frequência dominante que é uma sub-banda na qual um valor de coeficiente de norma no espectro tem um valor máximo local, e emite cada banda de frequência dominante identificada às seções de determinação de grupo domi-nante 302-1 a 302N. Além de designar uma banda de frequência para qual um valor de coeficiente de norma tem um valor máximo local, os exemplos do método para a determinação de uma banda de frequência dominante podem incluir a designação, uma banda dentre todas as sub-bandas nas quais o valor de coeficiente de norma tem um valor máximo como uma banda de frequência dominante ou designar como uma banda de frequência dominante, uma banda que tem um valor de coeficiente de norma que excede um limite predeterminado ou um limite calculado a partir das normas de todas as sub-bandas.
[0060] As seções de determinação de grupo dominante 302-1 a 302N determinam de maneira adaptativa as larguras de grupo de acordo com as características de sinal de entrada centralizado na banda de frequência dominante emitida a partir da seção de identificação de banda de frequência dominante 301. De maneira mais específica, a largura de grupo é definida como a largura de um grupo de subbandas centralizadas e em ambos os lados da banda de frequência dominante até as sub-bandas sendo que um coeficiente angular des- cendente do valor de coeficiente de norma para. As seções de determinação de grupo dominante 302-1 a 302N determinam as bandas de frequência incluídas nas larguras de grupo como grupos dominantes e emitem os grupos dominantes determinados à seção de determinação de grupo não dominante 303. Observa-se que quando uma banda de frequência dominante é localizada na borda (fim de uma frequência disponível), apenas um lado do coeficiente angular descendente é in-cluído no grupo.
[0061] A seção de determinação de grupo não dominante 303 de termina as sub-bandas contínuas emitidas a partir das seções de determinação de grupo dominante 302-1 a 302N, além dos grupos dominantes como grupos não dominantes sem as bandas de frequência dominantes. A seção de determinação de grupo não dominante 303 emite um grupo dominante e os grupos não dominantes à seção de cálculo de energia de grupo 304 e à seção de cálculo de variância de norma 306.
[0062] A seção de cálculo de energia de grupo 304 calcula a ener gia específica do grupo dos grupos dominantes e grupos não dominantes emitidos a partir da seção de determinação de grupo não dominante 303 e emite uma energia calculada à seção de cálculo de energia total 305 e à seção de distribuição de bit de grupo 308. A energia específica do grupo é calculada pela equação 1 a seguir.
[0063] Aqui, k indica um índice de cada grupo, energia (G(k)) indi ca a energia de grupo k, i indica uma sub-banda índice do grupo 2, M indica o número total de sub-bandas do grupo k e Norm(i) indica um valor de coeficiente de norma da sub-banda i do grupo n.
[0064] A seção de cálculo de energia total 305 adiciona toda a energia específica do grupo emitido a partir da seção de cálculo de energia de grupo 304 e calcula a energia total de todos os grupos. A energia total calculada é emitida à seção de distribuição de bit de grupo 308. A energia total é calculada pela equação 2 a seguir.
[0065] Aqui, a energiatotal indica a energia total de todos os grupos, N indica o número total de grupos em um espectro, k indica um índice de cada grupo, e a energia(G(k)) indica a energia do grupo k.
[0066] A seção de cálculo de variância de norma 306 calcula a va riância de norma de grupo específico para os grupos dominantes e os grupos não dominantes emitidos a partir da seção de determinação de grupo não dominante 303, e emite uma variância de norma calculada à seção de cálculo de variância de norma total 307 e à seção de distribuição de bit de grupo 308. A variância de norma de grupo específico é calculada pela equação 3 a seguir.
[0067] Aqui, k indica um índice de cada grupo, Normvar(G(k)) indica uma variância de norma do grupo k, Normmax(G(k)) indica uma valor de coeficiente de norma máxima do grupo k, e Normmin(G(k)) indica um valor mínimo de coeficiente de norma do grupo k.
[0068] A seção de cálculo de variância de norma total 307 calcula uma variância de norma total de todos os grupos com base na variância de norma de grupo específico emitido a partir da seção de cálculo de variância de norma 306. A variância de norma total calculada é emitida à seção de distribuição de bit de grupo 308. A variância de norma total é calculada pela equação 4 a seguir.
[0069] Aqui, Normvartotal indica uma variância de norma total de to dos os grupos, N indica o número total de grupos em um espectro, k indica um índice de cada grupo, e Normvar(G(k)) indica uma variância de norma do grupo k.
[0070] A seção de distribuição de bit de grupo 308 (que corres- ponde a uma primeira seção de alocação de bit) distribui os bits de grupo em grupo com base na energia específica do grupo emitido a partir da seção de cálculo de energia de grupo 304, a energia total de todos os grupos emitida a partir da seção de cálculo de energia total 305, a variância de norma de grupo específico emitida a partir da seção de cálculo de variância de norma 306 e a variância de norma total de todos os grupos emitida a partir da seção de cálculo de variância de norma total 307, e emite os bits distribuídos de grupo em grupo à seção de distribuição de bit de sub-banda 309. Os bits distribuídos de grupo em grupo são calculados pela equação 5 a seguir.
[0071] qui, k indica um índice de cada grupo, Bits(G(k)) indica o número de bits distribuídos ao grupo k, Bitstotal indica o número total de bits disponíveis, scale1 indica a razão entre os bits alocados pela energia, Energia(G(k)) indica a energia do grupo k, energiatotal indica a energia total de todos os grupos, e Normvar(G(k)) indica uma variância de norma do grupo k.
[0072] Além disso, scale1 na equação 5 acima assume um valor dentro de uma faixa de [0, 1] e ajusta a razão de bits alocados pela energia ou variância de norma. Quanto maior o valor de scale1, mais bits são alocados pela energia e, em um caso extremo, se o valor for 1, todos os bits são alocados pela energia. Quanto menor o valor de scale1, mais bits são alocados pela variância de norma e, em um caso extremo, se o valor for 0, todos os bits são alocados pela variância de norma.
[0073] Ao distribuir os bits de grupo em grupo conforme descrito acima, a seção de distribuição de bit de grupo 308 pode distribuir mais bits aos grupos dominantes e distribuir menos bits aos grupos não dominantes.
[0074] Assim, a seção de distribuição de bit de grupo 308 pode determinar a importância perceptual de cada grupo pela energia e variância de norma e melhorar mais os grupos dominantes. A variância de norma corresponde a uma teoria de mascaramento e pode determinar a importância de perceptual com maior precisão.
[0075] A seção de distribuição de bit de sub-banda 309 (que cor responde a uma segunda seção de alocação de bit) distribui os bits às sub-bandas em cada grupo com base nos bits de grupo específico emitidos a partir da seção de distribuição de bit de grupo 308 e emite os bits alocados para as sub-bandas de grupo específico à seção de codificação de vetor de retícula 108 como o resultado de alocação de bit. Aqui, mais bits são distribuídos para as sub-bandas importantes de modo perceptual e menos bits são distribuídos para as sub-bandas menos importantes de modo perceptual. Os bits distribuídos para cada sub-banda em um grupo são calculados pela equação 6 a seguir.
[0076] Aqui, BitsG(k)sb(i) indica os bits alocados para a sub-banda i do grupo k, i indica um índice de sub-banda do grupo k, Bits(G(k)) indica um bit alocado para o grupo k, Energia(G(k)) indica a energia do grupo k, e Norm(i) indica um valor de coeficiente de norma de sub-banda i do grupo k.
[0077] A seguir, um método de agrupamento será descrito com o uso das figuras 8A a 8C. Supondo que um envelope espectral quanti- zado mostrado na figura 8A é inserido na seção de identificação de banda de frequência de pico 301. A seção de identificação de banda de frequência de pico 301 identifica as bandas de frequência dominantes 9 e 20 com base no envelope espectral quantizado inserido (ver a figura 8B).
[0078] As seções de geração de grupo dominante 302-1 a 302-N determinam as sub-bandas centralizadas e em ambos os lados das bandas de frequência dominantes 9 e 20 até as sub-bandas sendo que um coeficiente angular descendente do valor de coeficiente de norma para como um grupo dominante idêntico. Nos exemplos nas figuras 8A a 8C, como para a banda de frequência dominante 9, as sub-bandas 6 a 12 são determinadas como o grupo dominante (grupo 2), enquanto para a banda de frequência dominante 20, as sub-bandas 17 a 22 são determinadas como o grupo dominante (grupo 4) (vide a figura 8C).
[0079] A seção de determinação de grupo não dominante 303 de termina as bandas de frequência contínua além dos grupos dominantes como grupos não dominantes sem as bandas de frequência dominantes. No exemplo nas figuras 8A a 8C, as sub-bandas 1 a 5 (grupo 1), as sub-bandas 13 a 16 (grupo 3) e as sub-bandas 23 a 25 (grupo 5) são determinadas como grupos não dominantes, respectivamente (vide a figura 8C).
[0080] Como um resultado, os envelopes espectrais quantizados são divididos em cinco grupos, ou seja, dois grupos dominantes (grupos 2 e 4) e três grupos não dominantes (grupos 1, 3 e 5).
[0081] Com o uso de tal método de agrupamento, é possível de terminar de maneira adaptativa as larguras de grupo de acordo com as características de sinal de entrada. De acordo com esse método, o aparelho de decodificação de voz/áudio também usa os coeficientes de norma quantizados disponíveis e, portanto, as informações adicionais não precisam ser transmitidas ao aparelho de decodificação de voz/áudio.
[0082] Observa-se que a seção de cálculo de variância de norma 306 calcula uma variância de norma de grupo específico. Nos exemplos nas figuras 8A a 8C, a variância de norma energiavar (G(2)) no grupo 2 é mostrada na figura 9 como uma referência.
[0083] A seguir, a importância perceptual será descrita. Um espec tro de um sinal de voz/áudio inclui, em geral, uma pluralidade de picos (montanhas) e vales. Um pico é constituído por um componente de espectro localizado em uma frequência dominante do sinal de voz/áudio (componente de som dominante). O pico é muito importante de modo perceptual. A importância perceptual do pico pode ser determinada por uma diferença entre a energia do pico e a energia do vale, ou seja, por uma variância de norma. De modo teórico, quando um pico tem energia grande o suficiente comparada às bandas de frequência vizinhas, o pico deve ser codificado com um número suficiente de bits, mas se o pico for codificado com um número insuficiente de bits, o ruído de codificação que se mistura se torna facilmente notado, fazendo com que a qualidade do som sofra uma deterioração. Por outro lado, um vale não é constituído por qualquer componente de som dominante de um sinal de voz/áudio e não é importante de modo perceptual.
[0084] De acordo com o método de agrupamento de banda de fre quência da presente modalidade, a banda de frequência dominante corresponde a um pico de um espectro e o agrupamento de banda de frequências significa que separam os picos (grupos dominantes que incluem as bandas de frequência dominantes) dos vales (grupos não dominantes sem as bandas de frequência dominantes).
[0085] A seção de distribuição de bit de grupo 308 determina a im portância perceptual de um pico. Em contraste à técnica G.719 na qual a importância perceptual é determinada apenas pela energia, a presente modalidade determina a importância perceptual com base tanto nas distribuições de energia quanto de norma (energia) e determina os bits a serem distribuídos a cada grupo com base na importância perceptual determinada.
[0086] Na seção de distribuição de bit de sub-banda 309, quando uma variância de norma em um grupo é grande, isso significa que esse grupo é um de picos, o pico é mais importante de modo perceptual e um coeficiente de norma que tem um valor máximo deve ser codifi- cado de maneira precisa. Por esse motivo, mais bits são distribuídos para cada sub-banda desse pico. Por outro lado, quando uma variância de norma em um grupo é muito pequena, isso significa que esse grupo é um de vales, e o vale não é importante de modo perceptual e não precisa ser codificado de maneira precisa. Por esse motivo, menos bits são distribuídos para cada sub-banda desse grupo.
[0087] Assim, a presente modalidade identifica uma banda de fre quência dominante na qual um valor de coeficiente de norma em um espectro de um sinal de voz/áudio de entrada tem um valor máximo local, os grupos de todas as sub-bandas em grupos dominantes que incluem uma banda de frequência dominante e os grupos não dominantes que não incluem qualquer banda de frequência dominante, distribui os bits para cada grupo com base na energia específica do grupo e as variâncias de norma, e ainda distribui os bits distribuídos de grupo em grupo para cada sub-banda de acordo com uma razão de uma norma para energia de cada grupo. Dessa maneira, é possível alocar mais bits para grupos importantes de modo perceptual e as subbandas e realizar uma distribuição de bit eficiente. Como um resultado, a qualidade de som pode ser aprimorada.
[0088] Observa-se que o coeficiente de norma na presente moda lidade representa a energia de sub-banda e também é chamado de “envelope de energia”. A descrição do Pedido de Patente Japonês N° 2012-272571, depositado no dia 13 de dezembro de 2012, que inclui o relatório descritivo, os desenhos e o resumo é aqui incorporado a título de referência em sua totalidade.
Aplicabilidade Industrial
[0089] O aparelho de codificação de voz/áudio, o aparelho de de- codificação de voz/áudio, o método de codificação de voz/áudio e o método de decodificação de voz/áudio de acordo com a presente invenção são aplicáveis a um aparelho terminal de comunicação de rádio, aparelho de estação base de comunicação de rádio, aparelho terminal de conferência de telefone, aparelho terminal de conferência de vídeo e aparelho terminal de voz por protocolo de Internet (VoIP) ou similares. Listagem de Referência 101 detector temporário 102 seção de transformação 103 seção de avaliação de norma 104 seção de quantização de norma 105 seção de normalização de espectro 106 , 203 seção de ajuste de norma 107 , 204 seção de alocação de bit 108 seção de codificação de vetor de retícula 109 seção de ajuste de nível de ruído 110 multiplexador 201 demultiplexador 202 seção de desquantização de norma 205 seção de decodificação de retícula 206 gerador de preenchimento espectral 207 adicionador 208 seção de formação de envelope 209 seção de transformação inversa 301 seção de identificação de banda de frequência dominante 302-1 a 302-N seção de determinação de grupo dominante 303 seção de determinação de grupo não dominante 304 seção de cálculo de energia de grupo 305 seção de cálculo de energia total 306 seção de cálculo de variância de norma 307 seção de cálculo de variância de norma total 308 seção de distribuição de bit de grupo 309 seção de distribuição de bit de sub-banda