BRPI0904958B1 - Aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral - Google Patents

Aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral Download PDF

Info

Publication number
BRPI0904958B1
BRPI0904958B1 BRPI0904958-4A BRPI0904958A BRPI0904958B1 BR PI0904958 B1 BRPI0904958 B1 BR PI0904958B1 BR PI0904958 A BRPI0904958 A BR PI0904958A BR PI0904958 B1 BRPI0904958 B1 BR PI0904958B1
Authority
BR
Brazil
Prior art keywords
spectral
time
signal
bandwidth extension
detector
Prior art date
Application number
BRPI0904958-4A
Other languages
English (en)
Inventor
Max Neuendorf
Ulrich Kraemer
Sascha Disch
Frederik Nagel
Stefan WABNIK
Original Assignee
Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. filed Critical Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V.
Publication of BRPI0904958A2 publication Critical patent/BRPI0904958A2/pt
Publication of BRPI0904958B1 publication Critical patent/BRPI0904958B1/pt

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring

Abstract

aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral aparelho para calcular dados de extensão de largura de banda de um sinal de áudio em um sistema de extensão de largura de banda, no qual uma primeira banda espectral é codificada com um primeiro número de bits e uma segunda banda espectral diferente da primeira banda espectral é codificada com um segundo número de bits, o segundo número de bits sendo menor que o primeiro número de bits, tendo um calculador de parâmetro de extensão de largura de banda (10) para calcular parâmetros de extensão de largura de banda para a segunda banda de freqüência em âmbito de quadro para uma seqüência de quadros do sinal de áudio. cada quadro tem um instante de tempo de início controlável. o aparelho adicionalmente compreende um detector de inclinação espectral (12) para detectar uma inclinação espectral em uma porção de tempo do sinal de áudio e para sinalizar o instante de tempo de início para os quadros individuais do sinal de áudio dependendo da inclinação espectral.

Description

APARELHO E MÉTODO PARA CALCULAR DADOS DE EXTENSÃO DE LARGURA DE BANDA USANDO UM QUADRO CONTROLADO POR INCLINAÇÃO ESPECTRAL
DESCRIÇÃO
A presente invenção está relacionada à codificação/decodificação de áudio e, especificamente, a codificação/decodificação no contexto de extensão de largura de banda (BWE) . Uma implementação bem conhecida de BWE é replicação espectral de largura de banda (SBR), que foi padronizada no MPEG (Grupo Especializado de Imagem em Movimento).
A WO 00/45378 revela uma codificação de envelope espectral eficiente usando resolução de tempo/freqüência variável e comutação de tempo/freqüência. Um sinal de entrada analógico é alimentado a um conversor A/D, formando um sinal digital. O sinal de áudio digital é alimentado a um codificador de áudio perceptual, onde a codificação de fonte é executada. Além disso, o sinal digital é alimentado a um detector de transiente e a um banco de filtro de análise, que dividem o sinal em sua representação espec trai (sinais de sub-bandas). O detector de transiente opera nos sinais de sub-banda do banco de análise ou opera diretamente nas amostras de domínio de tempo digital. O detector de transiente di vide o sinal em grânulos e determina, se sub-grânulos dentro dos grânulos devem ser marcados como transientes. Esta informação é enviada para um bloco de agrupamento de envelope, que especifica a grade de tempo/freqüência a ser usada para o grânulo atual. De acordo com a grade, o bloco combina uniformemente sinais de subbanda amostrados de modo a obter valores de envelope amostrados não uniformemente. Estes valores podem ser a média ou, alternati vamente, a energia máxima para as amostras de sub-banda que foram combinadas. Os valores de envelope são, juntamente com a informação de agrupamento, alimentados ao bloco de codificador de envelope. Este bloco decide em qual direção (tempo ou frequência) codificar os valores do envelope. Os sinais resultantes, a saida do codificador de áudio, a informação de envelope de banda larga, e os sinais de controle são alimentados ao multiplexador, formando uma corrente de bits serial que é transmitida ou armazenada.
No lado do decodificador, um desmultiplexador recupera os sinais e alimenta a saida do codificador de áudio perceptual para um decodificador de áudio, que produz um sinal de áudio digital de banda baixa. A informação de envelope é alimentada do desmultiplexador para o bloco de decodificação do envelope, que, pelo uso dos dados de controle, determina em qual direção o envelope atual é codificado e decodifica os dados. O sinal de banda baixa do decodificador de áudio é encaminhado para um módulo de transposição, que gera uma estimativa do sinal de banda alta original consistindo de uma ou várias harmônicas do sinal de banda baixa. O sinal de banda alta é alimentado a um banco de filtro de análise, que é do mesmo tipo que aquele do lado do codificador. Os sinais de sub-banda são combinados em uma unidade de agrupamento de fator de escala. Por meio do uso de dados de controle do des — multiplexador, o mesmo tipo de combinação e distribuição de tempo/freqüência das amostras de sub-banda é adotado como no lado do codificador. A informação de envelope do desmultiplexador e a informação da unidade de agrupamento do fator de escala são processadas em um módulo de controle de ganho. O módulo computa fatores de ganho a serem aplicados às amostras de sub-banda antes da re construção usando um bloco de banco de filtro de síntese. A saída do banco de filtro de síntese é, dessa maneira, um sinal de áudio de banda alta ajustado ao envelope. O sinal é adicionado à saída de uma unidade de atraso, que é alimentada com o sinal de áudio de banda baixa. O atraso compensa o tempo de processamento do sinal de banda alta. Finalmente, o sinal de banda larga digital obtido é convertido em um sinal de áudio analógico em um conversor de digital para analógico.
Quando acordes sustentados são combinados com transientes agudos com conteúdo principalmente de alta frequência, os acordes têm energia elevada na banda baixa e a energia transiente é baixa, enquanto o oposto é verdadeiro na banda alta. Os dados de envelope que são gerados durante intervalos de tempo onde transientes estão presentes, são dominados pela energia transiente intermitente elevada. Codificadores típicos operam em uma base de bloco, onde cada bloco representa um intervalo de tempo fixo. Detector transiente de previsão é empregado no lado do codificador de modo que dados de envelope transpondo os limites de blocos possam ser processados. Isto permite uma seleção mais flexível de resoluções de tempo/freqüência.
O padrão internacional ISO/IEC 14496-3 revela uma grade de tempo/freqüência na Seção 4.6.18.3.3, que descreve o número de envelopes SBR e pisos de ruído, assim como segmento de tempo associado com cada envelope SBR e piso de ruído. Cada segmento de tempo é definido por um limitador de tempo de início e um limitador de tempo de parada. A fenda de tempo indicada pelo limitador de tempo de início é incluída no segmento de tempo, a fenda de tempo indicada pelo limitador de tempo de parada é excluída do segmento de tempo. O limitador de tempo de parada de um segmento é igual ao limitador de tempo de inicio do próximo segmento na sequência de segmentos. Dessa maneira, os limitadores de tempo de envelopes SBR dentro de um quadro SBR são decodificáveis em um lado do decodificador. A grade de tempo/grade de frequência correspondente é determinada pelo codificador.
A Patente Norte-Americana 6.453.282 BI revela um método e dispositivo para detectar um transiente em um sinal de áudio de tempo discreto. Um codificador compreende um dispositivo de transformada de tempo/freqüência, um dispositivo de quantização/codificação e um dispositivo de formatação de corrente de bits. O estágio de quantização/codificação é controlado por um estágio de modelo psicoacústico. O estágio de transformada de tempo/f reqüência é controlado . por um detector transiente, onde a transformada de tempo/freqüência é controlada para mudar de uma janela longa para uma janela curta em caso de um transiente detectado. No detector de transientes, a energia de um sinal de áudio de tempo discreto filtrado no segmento atual é comparada com a energia do sinal de áudio de tempo discreto filtrado em um segmento precedente ou um relacionamento atual entre a energia do sinal de áudio de tempo-discreto filtrado no segmento de corrente e a energia do sinal de áudio de tempo discreto não filtrado no segmento atual são formadas, e este relacionamento é comparado com um relacionamento correspondente. Se um transiente está presente no sinal de áudio de tempo discreto, é detectado usando uma e/ou a outra destas comparações.
A codificação de sinais de voz é especificamente exigente devido ao fato de que a voz compreende não apenas vogais, que têm um conteúdo predominantemente harmônico no qual a maioria da energia geral está concentrada na parte inferior do espectro, mas também contém uma quantidade significativa de sibilantes. Uma sibilante é um tipo de consoante fricativa ou africada, feita pelo direcionamento de um jato de ar através de um canal estreito no trato vocal na direção de uma borda afiada dos dentes. O termo sibilante é frequentemente tomado como sendo sinônimo do termo estridente. O termo sibilante tende a ter uma definição articulatória ou aerodinâmica envolvendo a produção de um ruido periódico em um obstáculo. Estridente se refere à qualidade perceptual de intensidade conforme determinado pelas características de amplitude e frequência do som resultante (isto é, uma definição acústica auditiva ou possivelmente acústica).
Sibilantes são mais altas que suas contrapartidas não sibilantes, e a maioria de sua energia acústica ocorre em freqüências mais altas que fricativas não sibilantes. [s] tem a maior resistência acústica ao redor de 8.000 Hz, mas pode atingir até 10.000 Hz. [f] tem o volume de sua energia acústica ao redor de 4.000 Hz, mas pode se estender até ao redor de 8.000 Hz. Para as sibilantes, existem símbolos IPA, onde sibilantes alveolares ou pós-alveolares são conhecidos. Existem também sibilantes assobiadas e, dependendo do idioma correspondente, outros sons relacionados .
Todas estas consoantes sibilantes na fala têm em comum que, se precedidas imediatamente por uma vogal, ocorre uma mudança forte de energia da parte de baixa freqüência para a parte de alta freqüência. Um detector transiente, que está direcionado para a detecção de um aumento da energia com o tempo, pode não es6 *· tar na posição para detectar esta mudança de energia. Isto, entretanto, pode não ser muito problemático em codificação de áudio de banda base, na qual, por exemplo, uma extensão de largura de banda não é aplicada, visto que sibilantes têm uma duração que é, nor5 malmente, mais longa que eventos transientes ocorrendo em um contexto de tempo muito curto. Em codificação de banda base tal como codificação AAC, o espectro total é codificado com uma resolução de alta frequência. Portanto, uma mudança de energia da porção de baixa frequência para a porção de alta frequência não tem necessa10 riamente que ser detectada devido à natureza comparativamente fixa de sibilantes em sinais de voz, quando o comprimento de uma sibilante tal como um [s] em uma palavra sister é comparado com o •1' comprimento de quadro de uma função de janela longa. Além do mais, a parte de alta frequência é codificada com uma taxa de bits ele15 vada de qualquer maneira.
A situação, entretanto, se torna problemática quando sibilantes ocorrem no contexto de extensão de largura de banda. Na extensão de largura de banda, a porção de baixa freqüên’ cia é codificada com uma alta resolução/alta taxa de bits usando um codificador de banda base tal como um codificador AAC e a banda alta é codificada com uma pequena resolução/pequena taxa de bits tipicamente apenas usando certos parâmetros tal como um envelope espectral usando valores de envelope espectral que tenham uma resolução de freqüência muito menor que a resolução de freqüência do 25 espectro de banda base. Declarada de forma diferente, a distância espectral entre dois parâmetros de envelope espectral será maior (por exemplo, pelo menos dez vezes) que a distância espectral entre os valores espectrais no espectro de banda baixa.
No lado do decodificador, uma extensão de largura de banda é executada, na qual o espectro de banda baixa é usado para regenerar o espectro de banda alta. Quando, neste contexto, uma mudança de energia da porção de banda baixa para a porção de banda alta ocorre, isto é, quando uma sibilante ocorre, se torna claro que esta mudança de energia significativamente influenciará a precisão/qualidade do sinal de áudio reconstruído. Entretanto, um detector de transiente procurando um aumento (ou diminuição) na energia não detectará esta mudança de energia, de modo que os dados de envelope espectral para um quadro de envelope espectral, que cobre uma porção de tempo antes ou após a sibilante, será afetado pela mudança de energia dentro do espectro. No lado do decodificador, o resultado será aquele devido à falta de resolução de tempo, o quadro inteiro será reconstruído com uma energia média, na porção de alta frequência, isto é, não com a energia baixa antes da sibilante e a energia alta após a sibilante. Isto resultará em uma diminuição de qualidade do sinal estimado.
É um objetivo da presente invenção para prover um conceito de extensão de largura de banda que resulte em um sinal de áudio de largura de banda estendida melhorado.
Este objetivo é atingido por um aparelho para calcular dados de extensão de largura de banda de acordo com a reivindicação 1, um método de cálculo de dados de extensão de largura de banda de acordo com a reivindicação 19 ou um programa de computador de acordo com a reivindicação 20.
A presente invenção é baseada na descoberta de que, no contexto de extensão de largura de banda, uma mudança de energia da porção de baixa frequência para a porção de alta fre qüência necessita ser detectada. De acordo com a presente invenção, um detector de inclinação espectral é aplicado para este objetivo. Quando esta mudança de energia é detectada, embora, por exemplo, a energia total no sinal não tenha mudado ou nem tenha sido reduzida, um sinal de instante de tempo de inicio é enviado do detector de inclinação espectral para um calculador de parâmetro de extensão de largura de banda controlável, de modo que o calculador de parâmetro de extensão de largura de banda define um instante de tempo de inicio para um quadro de dados de parâmetro de extensão de largura de banda. O instante de tempo final do quadro pode ser definido automaticamente, tal como certa quantidade de tempo subsequente ao instante de tempo de inicio ou de acordo com certa grade de quadro ou de acordo com um sinal de instante de tempo de parada emitido pelo detector de inclinação espectral, quando o detector de inclinação espectral detecta o fim da mudança de frequência ou, dito de forma diferente, a mudança de freqüência de volta da alta freqüência para a baixa freqüência. Devido aos efeitos de pós-mascaramento psicoacústico, que são muito mais significantes que efeitos de pré-mascaramento, um controle preciso do instante de tempo de inicio de um quadro é mais importante que um instante de tempo de parada do quadro.
Preferivelmente, e de modo a economizar recursos e atrasos de processamento, o que é especificamente necessário para aplicações de dispositivo móvel (por exemplo, telefones móveis) , um detector de inclinação espectral é implementado como um estágio de análise LPC de nivel baixo. Preferivelmente, a inclinação espectral de uma porção de tempo do sinal de áudio é estimada com base em um ou vários coeficientes LPC de ordem baixa. Com base em uma decisão de limite com um limite predeterminado da inclinação espectral, e preferivelmente com base em uma mudança no sinal da inclinação espectral que é uma decisão de limite com um limite de zero, a emissão do sinal ,de instante de tempo de inicio é controlada. Quando apenas o primeiro coeficiente LPC é usado na estimativa da inclinação espectral, é suficiente determinar apenas o sinal deste primeiro coeficiente LPC, visto que este sinal determina o sinal da inclinação espectral e, portanto, determina se um sinal de instante de tempo de inicio tem que ser emitido ou não para o calculador de parâmetro de extensão de largura de banda.
Preferivelmente, o detector de inclinação espectral coopera com um detector - transiente, que é adaptado para detectar uma mudança de energia, isto é, um aumento ou diminuição de energia do sinal de áudio inteiro. Em uma configuração, o comprimento de um quadro de parâmetro de extensão de largura de banda é mais alto, quando um transiente no sinal foi detectado, enquanto o calculador de parâmetro de extensão de largura de banda controlável define um comprimento mais curto de um quadro quando o detector de inclinação espectral sinalizou um sinal de instante de tempo de inicio.
Configurações preferidas da presente invenção são subsequentemente descritas com relação aos desenhos em anexo, nos quais:
A Figura la é uma configuração preferida de um aparelho/método para calcular dados de extensão de largura de banda de um sinal de áudio;
A Figura 1b ilustra o enquadramento resultante para um sinal de áudio tendo transientes e as porções de tempo correspondentes do detector de inclinação espectral;
A Figura lc ilustra uma tabela para controlar a resolução de tempo/quadro do calculador de parâmetro em resposta aos sinais do detector de inclinação espectral e um detector de transiente adicional;
A Figura 2a ilustra uma inclinação espectral negativa de um sinal não sibilante;
A Figura 2b ilustra uma inclinação espectral positiva para um sinal do tipo sibilante;
A Figura 2c explica o cálculo da inclinação espectral m com base nos parâmetros LPC de baixa ordem;
Ά Figura 3 ilustra um diagrama de bloco de um codificador de acordo com uma configuração preferida da presente invenção; e
A Figura 4 ilustra um decodificador de extensão de largura de banda.
Antes de discutir as Figuras 1 e 2 em detalhe, um cenário de extensão de largura de banda é descrito com relação às Figuras 3 e 4.
A Figura 3 mostra uma configuração para o codificador 300, que compreende módulos relacionados SBR 310, um banco QMF de análise 320, um filtro de passagem baixa (filtro LP) 330, um codificador de núcleo AAC 340 e um formatador de carga útil de corrente de bits 350. Além disso, o codificador 300 compreende o calculador de dados de envelope 210. O codificador 300 compreende uma entrada para amostras PCM (sinal de áudio 105; PCM = modulação de código de pulso), que é conectada ao banco QMF de análise 320, e aos módulos relacionados à SBR 310 e ao filtro LP 330. O banco
QMF de análise 320 pode compreender um filtro de passagem alta para separar a segunda banda de freqüência 105b e é conectado ao calculador de dados de envelope 210, que, por sua vez, é conectado ao formatador de carga útil de corrente de bits 350. O filtro LP 330 pode compreender um filtro de baixa passagem para separar a primeira banda de freqüência 105a e está conectado ao codificador de núcleo AAC 340, que, por sua vez, está conectado ao formatador de carga útil de corrente de bits 350. Finalmente, o módulo relacionado à SBR 310 é conectado ao calculador de dados de envelope 210 e ao codificador de núcleo AAC 340.
Portanto, o codificador 300 amostra de forma decrescente o sinal de áudio 105 para gerar componentes na banda de freqüência de núcleo 105a (no filtro LP 330), que são inseridos no codificador núcleo AAC 340, que codifica o sinal de áudio na banda de freqüência de núcleo e envia o sinal codificado 355 para o formatador de carga útil de corrente de bits 350 no qual o sinal de áudio codificado 355 da banda de freqüência de núcleo é adicionado à corrente de áudio codificada 345 (uma corrente de bits) . Por outro lado, o sinal de áudio 105 é analisado pelo banco QMF de análise 320 e o filtro de passagem alta do banco QMF de análise extrai componentes de freqüência da banda de alta freqüência 105b e insere este sinal no calculador de dados de envelope 210 para gerar dados SBR 375. Por exemplo, um Banco QMF 320 de 64 sub-bandas executa a filtragem de sub-banda do sinal de entrada. A saída do banco de filtro (isto é, as amostras de sub-banda) são de valor complexo e, dessa maneira, amostradas em excesso por um fator de dois comparado com um banco QMF regular.
O módulo relacionado à SBR 310 pode, por exemplo, compreender um aparelho para gerar os dados de saída BWE e controlar o calculador de dados de envelope 210. Usando os componentes de áudio 105b gerados pelo banco QMF de análise 320, o calculador de dados de envelope 210 calcula os dados SBR 375 e envia os dados SBR 375 para o formatador de carga útil de corrente de bits 350, que combina os dados SBR 375 com os componentes 355 codificados pelo codificador de núcleo 340 na corrente de áudio codificada 345.
Alternativamente, o aparelho para gerar os dados de saída BWE pode também ser parte do calculador de dados de envelope 210 e o processador pode também ser parte do formatador de carga útil de corrente de bits 350. Portanto, os componentes diferentes do aparelho podem ser parte de componentes de codificador diferentes da Figura 3.
A Figura 4 mostra uma configuração para um decodificador 400, onde a corrente de áudio codificada 345 é inserida em um desformatador de carga, útil de corrente de bits 357, que separa o sinal de áudio codificado 355 dos dados SBR 375. O sinal de áudio codificado 355 é inserido, por exemplo, no decodificador de núcleo AAC 360, que gera o sinal de áudio decodificado 105a na primeira banda de freqüência. O sinal de áudio 105a (componentes na primeira banda de freqüência) é inserido em um banco QMF de 32 bandas de análise 370, gerando, por exemplo, 32 sub-bandas de freqüência 10532 do sinal de áudio 105a na primeira banda de freqüência. O sinal de áudio de sub-banda de freqüência 10532 é inserido no gerador de modificação 4Í0 para gerar uma representação espectral de sinal bruto 425 (modificação) , que é inserida em uma ferramenta SBR 430a. A ferramenta SBR 430a pode, por exemplo, compre ender uma unidade de cálculo de piso de ruido para gerar um piso de ruido. Além disso, a ferramenta SBR 430a pode reconstruir harmônicas perdidas ou executar a etapa de filtragem inversa. A ferramenta SBR 430a pode implementar métodos de replicação de banda espectral conhecida a ser usada na saida de dados espectrais QMF do gerador de modificação 410. O algoritmo de modificação usado no domínio de frequência, por exemplo, podería empregar o espelhamento simples ou cópia dos dados espectrais dentro do domínio de subbanda de frequência.
Por outro lado, os dados SBR 375 (por exemplo, compreendendo os dados de saída BWE 102) são inseridos em um analisador de corrente de bits 380, que analisa os dados SBR 375 para obter diferentes subinformações 385 e inserir as mesmas, por exemplo, em uma unidade de decodificação e desquantização de Huffman 390 que, por exemplo, extrai a informação de controle 412 e os parâmetros de replicação de banda espectral 102, implicando em certa resolução de tempo de quadro de dados SBR. A informação de controle 412 controla o gerador de modificação 410. Os parâmetros de replicação de banda espectral 102 são inseridos na ferramenta SBR 430a, assim como em um ajustador de envelope 430b. O ajustador de envelope 430b é operacional para ajustar o envelope para a modificação gerada. Como um resultado, o ajustador de envelope 430b gera o sinal bruto ajustado 105b'para a segunda banda de freqüência e insere o mesmo em um banco QMF de síntese 440, que combina os componentes da segunda banda de freqüência 105b com o sinal de áudio no domínio de freqüência 10532. O banco QMF de síntese 440 pode, por exemplo, compreender 64 bandas de freqüência e gerar pela combinação de ambos os sinais (os componentes na segunda banda de frequência 105b e o sinal de áudio de domínio de sub-banda 10532) , o sinal de áudio de síntese 105 (por exemplo, uma saída de amostras PCM, PCM = modulação de código de pulso).
O banco de síntese QMF 440 pode compreender um combinador, que combina o sinal de domínio de frequência 10532 com a segunda banda de frequência 105b antes de ser transformado no domínio de tempo e antes de ser enviado como o sinal de áudio 105.
Opcionalmente, o combinador pode enviar o sinal de áudio 105 no
domínio de freqüência.
As ferramentas SBR 430a podem compreender uma
ferramenta de piso de ruído, que adiciona ruído adicional ao es-
pectro modificado (a representação espectral de sinal bruto 425) , de modo que os componentes espectrais 105a que foram transmitidos por um codificador de núcleo 340 e que são usados para sintetizar os componentes da segunda banda de frequência 105b exibem propriedades de tonalidade similares como a segunda banda de frequência 105b, conforme ilustrado na Figura 3, do sinal original.
A Figura la ilustra um aparelho para calcular dados de extensão de largura de banda de um sinal de áudio em um sistema de extensão de largura de banda, no qual uma primeira banda espectral é codificada com um primeiro número de bits e uma segunda banda espectral diferente da primeira banda espectral é codificada com um segundo número de bits. O segundo número de bits é menor que o primeiro número de bits. Preferivelmente, a primeira banda de freqüência é a banda de frequência baixa e a segunda banda de freqüência é a banda de alta freqüência, embora outros cenários de extensão de largura de banda sejam conhecidos, nos quais a primeira banda de freqüência e a segunda banda de freqüência são diferentes entre si, mas não são a banda baixa e a banda alta. Além do mais, de acordo com o ensinamento chave de técnicas de extensão de largura de banda, a banda alta é codificada muito mais grosseiramente do que a banda baixa. Preferivelmente, a taxa de bit requerida para a banda alta é de pelo menos 50% ou ainda mais preferivelmente de pelo menos 90% reduzida com relação a taxa de bits para a banda baixa. Dessa maneira, a taxa de bits para a segunda banda de freqüência é 50% ou ainda menor que a taxa de bits para a banda baixa.
O aparelho ilustrado na Figura la compreende um calculador de parâmetro de extensão de largura de banda controlado 10 para calcular parâmetros de extensão de largura de banda 11 para a segunda banda espectral· de uma maneira do tipo de quadro para uma seqüência de quadros do sinal de áudio. O calculador de parâmetros de extensão de largura de banda controlável 10 é configurado para aplicar um instante de tempo de inicio controlável para um quadro da seqüência de quadros.
O aparelho inventivo compreende, ainda, mais um detector de inclinação espectral 12 para detectar uma inclinação espectral em uma porção de tempo do sinal de áudio, que é provido via linha 13 para diferentes módulos na Figura la. O detector de inclinação espectral é configurado para sinalizar um instante de tempo de inicio para um quadro do sinal de áudio dependendo de uma inclinação espectral do sinal de áudio para o calculador de parâmetro de extensão de largura de banda controlável 10, de modo que o calculador de parâmetro de extensão de largura de banda 10 esteja na posição para aplicar um limitador de tempo de inicio tão logo um instante de tempo de inicio sinalizado do detector de incli16 nação espectral 12 tenha sido recebido.
Preferivelmente, um sinal de inclinação espectral/sinal de instante de tempo de início é enviado, quando um sinal de uma inclinação espectral da porção de tempo do sinal de áudio é diferente de um sinal da inclinação espectral do sinal de áudio na porção de tempo precedente do sinal de áudio. Ainda mais preferivelmente, um sinal de instante de tempo de início é emitido quando a inclinação espectral muda de negativa para positiva. Analogamente, um instante de tempo de parada pode ser sinalizado a partir do detector de inclinação espectral 12 para o calculador de parâmetro de extensão de largura de banda 10, quando ocorre uma mudança de inclinação espectral de uma inclinação espectral positiva para uma inclinação espectral negativa. Entretanto, o instante de tempo de parada pode ser derivado sem levar em consideração alterações na inclinação espectral no sinal de áudio. Exemplificativamente, o instante de parada de tempo do quadro pode ser definido pelo calculador de parâmetro de extensão de largura de banda autonomamente, quando certo período de tempo expirou desde o instante do tempo de início do quadro correspondente.
Na configuração preferida ilustrada na Figura la, um detector transiente adicional 14 é provido, o qual analisa o sinal de áudio 13 de modo a detectar alterações de energia no sinal integral de uma porção de tempo para a próxima porção de tempo. Quando certo aumento mínimo de energia de uma porção de tempo para a próxima porção de tempo é detectado, o detector de transiente 14 é configurado para enviar um sinal de instante de tempo de início para o calculador de parâmetro de extensão de largura de banda controlável 10 de modo que o calculador de parâmetro de ex— tensão de largura de banda define um instante de tempo de inicio de um novo quadro de parâmetro de extensão de largura de banda da seqüência de quadros de dados de parâmetro de extensão de largura de banda.
Preferivelmente, o aparelho para calcular os dados de extensão de largura de banda compreende um detector de música/fala 15 para detectar, se uma porção de tempo atual do sinal de áudio é um sinal de música ou um sinal de fala. No caso de um sinal de música, o detector de música/fala 15 irá, preferivelmente, desabilitar o detector de inclinação espectral 12 de modo a economizar energia/recursos de computação e de modo a evitar aumentos de taxa de bits devido a quadros pequenos desnecessários em sinais diferentes de sinais de voz. Esta característica é especificamente útil para dispositivos móveis, que têm recursos de processamento limitados e que têm, de forma ainda mais importante, recursos de energia/bateria limitados. Então, no entanto, o detector de música/fala 15 detecta uma porção de fala no sinal de áudio 13, o detector de música/fala habilita o detector de inclinação espectral. Uma combinação do detector de música/fala 15 com o detector de inclinação espectral 12 é vantajosa pela situação de inclinação espectral ocorrer principalmente durante porções de fala, mas ocorrer, menos provavelmente, durante porções de música. Mesmo quando aquelas situações ocorrem durante passagens de música, a perda destas ocorrências não é tão dramática devido ao fato de que a música tem uma característica de mascaramento muito melhor do que a fala. Sibilantes são, como foi descoberto, importantes para inteligibilidade de fala decodificada e importante para a impressão de qualidade subjetiva que o ouvinte tem. Dito de forma dife rente, a autenticidade da fala está bastante relacionada com a reprodução límpida de porções sibilantes da fala. Isto não é, entretanto, muito crítico para sinais de música.
A Figura 1b ilustra uma linha de tempo superior ilustrando a formação de quadros definida pelo calculador de parâmetro de extensão de largura de banda 10 para certa porção no tempo de um sinal de áudio. A formação de quadro compreende vários limitadores regulares que ocorrem na formação de quadros sem uma detecção de sibilantes, que são indicados em 16a-16d. Além disso, a formação de quadros compreende vários limitadores de quadros que originam da sibilante inventiva ou detecção de alteração de inclinação espectral. Estes limitadores são indicados em 17a-17c. Além disso, a Figura 1b torna claro que o tempo de início de quadro de certo quadro tal como o quadro i é coincidente com um tempo de parada de quadro do quadro i-1, isto é, um quadro precedente.
Na configuração da Figura lb, os instantes de tempo de parada tais como os limitadores regulares 16a-16d dos quadros são definidos automaticamente após a expiração de certo periodo de tempo após um instante de tempo de inicio de quadro. O comprimento deste periodo determina a resolução de tempo para formação de quadro de parâmetro de extensão de largura de banda sem a detecção de sibilantes.
Conforme ilustrado na Figura 1c, esta resolução de tempo pode ser definida com base no fato do sinal de instante de tempo de inicio se originar do detector de transiente 14 na Figura la ou do detector de inclinação espectral 12 na Figura la. Uma regra geral na configuração ilustrada na Figura 1c é que, tão logo o sinal de instante de tempo de inicio é recebido do detector de inclinação espectral, uma resolução de tempo mais elevada (periodo de tempo menor entre o instante de tempo de inicio e o instante de tempo de parada da formação de quadros ilustrada na Figura 1b) é definida. Quando, entretanto, o detector de inclinação espectral não detecta nada, mas o detector de transiente 14 realmente detecta uma transiente, então isto significa que apenas um aumento de energia ocorreu, mas uma mudança de energia não ocorreu. Nesta situação, o instante de tempo de parada automaticamente definido do quadro 10b é mais separado no tempo do instante de tempo de inicio devido ao fato de que uma sibilante obviamente não está no sinal de áudio e um sinal de música - não problemático ou outro sinal de áudio está presente.
Neste contexto, deve ser observado que definir limitadores na dependência de um detector de transiente ou um detector de inclinação espectral aumenta a taxa de bits do sinal codificado. A menor taxa de bits possível seria obtida, se os quadros na Figura lb tiverem um comprimento grande. Por outro lado, entretanto, um quadro grande reduz a resolução de tempo dos dados de parâmetro de extensão de largura de banda. Portanto, a presente invenção torna possível definir um novo instante de tempo de início (que significa um instante de tempo de parada do quadro precedente), apenas quando ele é realmente requerido. Além disso, a resolução de tempo variável, dependendo da situação real, isto é, se um transiente foi detectado ou se uma mudança de inclinação (por exemplo, causada por uma sibilante) foi detectada, permite adaptar ainda adicionalmente a formação de quadro de uma maneira ideal para os requisitos de qualidade/taxa de bits, de modo que, sempre, um compromisso ideal entre ambos os alvos contraditórios pode ser atingido.
A linha de tempo inferior na Figura lb ilustra um processamento de tempo exemplificative executado pelo detector de inclinação espectral 12. Na configuração da Figura lb, o detector de inclinação espectral opera de uma maneira baseada em bloco e, 5 especificamente, de uma maneira de sobreposição, de modo que as porções de tempo de sobreposição são buscadas para situações de inclinação espectral. Entretanto, o detector de inclinação espectral pode também operar em uma corrente continua de amostras e não tem, necessariamente, que aplicar o processamento baseado em bloco 10 ilustrado na Figura lb.
Preferivelmente, o instante de tempo de inicio do quadro é definido de forma breve antes do tempo de detecção de uma mudança de inclinação espectral. Entretanto, o calculador de parâmetro de extensão de largura de banda controlável tem alguma li15 berdade para definir um novo limitador de quadro, contanto que seja garantido que, com relação ao um quadro regular, o inicio do transiente detectado pelo detector de transiente ou inicio da sibilante detectada pelo detector de inclinação espectral esteja localizado dentro dos primeiros 25% do quadro com relação ao tempo, 20 ou ainda mais preferivelmente esteja localizado dentro dos primeiros 10% no momento do comprimento do quadro em uma formação de quadro regular, no qual ele é definido, quando um sinal de saida de inclinação não é obtido.
Preferivelmente, é garantido adicionalmente que 25 pelo menos uma porção da mudança de inclinação espectral detectada está no novo quadro e não está localizada no quadro anterior, mas podem ocorrer situações, nas quais certa porção inicial de uma mudança de inclinação espectral se torne localizada no quadro pre cedente. Esta porção inicial, entretanto, deve preferivelmente ser menos que 10% do tempo integral da mudança de inclinação espectral .
Na configuração da Figura 1b, uma inclinação espectral foi detectada na zona de tempo 18a, 18b e 18c, e o instante de tempo da mudança de inclinação espectral é definido para estar ocorrendo na zona de tempo 18a. Dessa maneira, o calculador de parâmetro de extensão de largura de banda controlável 10 garantirá que um quadro seja definido em qualquer instante no tempo dentro de uma zona de tempo 18a, 18b, 18c. Esta característica permite que o calculador de parâmetro de extensão de largura de banda mantenha certa formação de quadro básica no caso de uma formação de quadro básica ser necessária, contanto que a porção significativa da mudança de inclinação espectral esteja localizada subsequentemente ao instante de tempo de início, isto é, não no quadro anterior, mas sim no novo quadro.
A Figura 2a ilustra um espectro de energia de um sinal tendo uma inclinação espectral negativa. Uma inclinação espectral negativa significa uma inclinação em queda do espectro. Contrário a isto, a Figura 2b ilustra um espectro de energia de um sinal tendo uma inclinação espectral positiva. Dito em outras palavras, esta inclinação espectral tem uma inclinação em elevação. Naturalmente, cada espectro tal como o espectro ilustrado na Figura 2a ou o espectro ilustrado na Figura 2b terá variações em uma escala local que possui inclinações diferentes da inclinação espectral .
A inclinação espectral pode ser obtida quando, por exemplo, uma linha reta é ajustada ao espectro de energia tal como pela minimização das diferenças quadradas entre esta linha reta e o espectro real. Ajustando uma linha reta ao espectro pode ser uma das maneiras para calcular a inclinação espectral de um espectro de curto tempo. Entretanto, é preferido para calcular a inclinação espectral usando coeficientes LPC.
A publicação Efficient calculation of spectral tilt from various LPC parameters de V. Goncharoff, E. Von Colin e R. Morris, Naval Command, Control and Ocean Surveillance Center (NCCOSC) , RDT and E Division, San Diego, CA 92152-52001, 23 de maio de 1996, revela várias maneiras de calcular a inclinação espectral.
Em uma implementação, a inclinação espectral é definida como a inclinação de um ajuste linear de quadrados minicos ao espectro de energia de log. Entretanto, ajustes lineares ao espectro de energia diferente de log ou ao espectro de amplitude ou qualquer outro tipo de espectro podem também ser aplicados. Isto é especificamente verdadeiro no contexto da presente invenção, onde, na configuração preferida, o interesse especifico está no sinal da inclinação espectral, isto é, se a inclinação do resultado do ajuste linear é positiva ou negativa. O valor real da inclinação espectral, entretanto, não tem grande importância na configuração preferida da presente invenção, na qual o sinal é considerado, isto é, uma decisão de limite com um limite zero é aplicada. Em outras configurações, entretanto, um limite diferente de zero pode, também, ser útil.
Quando codificação preditiva linear (LPC) de fala é usada para modelar seu espectro de curto tempo, é computacionalmente mais eficiente calcular inclinação espectral diretamente dos parâmetros de modelo LPC ao invés do espectro de energia de log. A Figura 2c ilustra uma equação para os coeficientes cepstrais Ck correspondendo ao espectro de energia de log de todos os pólos de ordem n. Nesta equação, k é um índice inteiro, pn é o pólo n na representação de todos os pólos da função de transferência de domínio z H(z) do filtro LPC. A equação a seguir na Figura 2c é a inclinação espectral em termos dos coeficientes cepstrais. Especificamente, m é a inclinação espectral, k e n são inteiros e N é o pólo de ordem mais alta do modelo de todos os pólos para H(z) . A próxima equação na Figura 2c define o espectro de energia de log Ξ(ω) do filtro LPC de ordem N. G é a constante de ganho e ak são os coeficientes de preditor linear, e ω é igual a 2xQxf, onde f é a freqüência. A equação mais baixa na Figura 2c resulta diretamente nos coeficientes cepstrais como uma função dos coeficientes LPC ak. Os coeficientes Ck são, então, usados para calcular a inclinação espectral. Geralmente, este método será mais eficiente computacionalmente do que fatoração da polinomial LPC para obter os valores de pólo, e resolvendo para inclinação espectral usando as equações de pólo. Dessa maneira, após ter calculado os coeficientes LPC ak, é possível calcular os coeficientes cepstrais Ck usando a equação na parte inferior da Figura 2c e, então, é possível calcular os pólos pn a partir dos coeficientes cepstrais usando a primeira equação na Figura 2c. Então, com base nos pólos, é possível calcular a inclinação espectral m conforme definido na segunda equação da Figura 2c.
Foi descoberto que o coeficiente LPC de primeira ordem oq é suficiente para ter uma boa estimativa para o sinal da inclinação espectral, «i é, portanto, uma boa estimativa para Ci.
Assim, Ci é uma boa estimativa para pi. Quando px é inserido na equação para a inclinação espectral m, fica claro que, devido ao sinal de menos na segunda equação na Figura 2c, o sinal da inclinação espectral m é inverso ao sinal do primeiro coeficiente LPC «i na definição do coeficiente LPC na Figura 2c.
A Figura 3 ilustra o detector de inclinação espectral 12 no contexto de um sistema codificador SBR. Especificamente, o detector de inclinação espectral 12 controla o calculador de dados de envelope e outros módulos relacionados com SBR, de modo a aplicar um instante de tempo de início de um quadro de dados de parâmetro relacionado com SBR. A Figura 3 ilustra o banco QMF de análise 320 para decompor a segunda banda de freqüência, que é preferivelmente a banda alta, em certo número de sub-bandas tais como 32 sub-bandas de modo a executar um cálculo em âmbito de subbanda dos dados paramétricos SBR. Preferivelmente, o detector de inclinação espectral executa uma análise LPC simples para recuperar apenas o coeficiente LPC de primeira ordem conforme discutido no contexto da Figura 2c. Alternativamente, o detector de inclinação espectral 12 executa uma análise espectral do sinal de entrada e calcula a inclinação espectral, por exemplo, usando o ajuste linear ou qualquer outra maneira de cálculo da inclinação espectral. De forma geral, será preferido que a resolução do detector de inclinação espectral com relação a uma decomposição de freqüência é menor que a resolução de freqüência do banco QMF 320. Em outras configurações, o detector de inclinação espectral 12 não executará qualquer tipo de decomposição de freqüência tal como no contexto onde é apenas calculado o coeficiente LPC de primeira ordem oti, conforme discutido no contexto da Figura 2c.
Em outras configurações, o detector de inclinação espectral está configurado não apenas para calcular os coeficientes LPC de primeira ordem, mas para calcular vários coeficientes LPC de ordem baixa, tais como coeficientes LPC até a ordem de 3 ou 4. Nesta configuração, a inclinação espectral é calculada até uma precisão elevada de modo que não apenas é possível sinalizar um novo quadro quando a inclinação muda de negativo para positivo, mas é também preferível desencadear um novo quadro quando a inclinação espectral muda de uma magnitude elevada com um sinal negativo para um sinal muito tonal para uma magnitude baixa (valor absoluto) com o mesmo sinal. Além do mais, com relação ao instante de tempo de parada, é preferido calcular o final de um quadro quando a inclinação espectral tiver mudado de um alto valor positivo para um baixo valor positivo, visto que isto pode ser uma indicação de que a característica do sinal muda de sibilante para não sibilante. Independente da maneira de cálculo da inclinação espectral,, a detecção de um instante de tempo de início do quadro pode não apenas ser sinalizada por uma mudança de sinal, mas, também, alternativamente ou adicionalmente,' ser sinalizada por uma mudança de valor de inclinação em certo período de tempo predeterminado, que está acima de um limite de decisão.
Na configuração do sinal, o limite de decisão é um limite absoluto em um valor de inclinação de zero, e na configuração de mudança, o limite é um limite indicando uma mudança da inclinação, e este cálculo pode também ser executado pela aplicação de um limite absoluto em uma função obtida pelo cálculo do primeiro derivado da função de inclinação em relação com o tempo. Aqui, o detector de inclinação espectral é configurado para sina lizar o instante de tempo de início do quadro quando um valor de diferença entre um valor de inclinação espectral da porção de tempo do sinal de áudio e um valor de inclinação espectral do sinal de áudio na porção de tempo precedente do sinal de áudio é maior que um valor de limite predeterminado. O valor de diferença pode ser um valor absoluto (por exemplo, para valores de diferença negativos) ou um valor com um sinal (por exemplo, para valores de diferença positivos) e o valor de limite predeterminado é, nesta configuração, diferente de zero.
Conforme discutido no contexto da Figura 3 e 4, o calculador de parâmetro de extensão de largura de banda 10 é configurado para calcular os parâmetros de envelope espectral. Em outras configurações, entretanto, é preferido que o calculador de parâmetro de extensão de largura de banda calcule adicionalmente parâmetros de piso de ruído, parâmetros de filtragem inversos e/ou
parâmetros de harmônica faltando conforme é conhecido da porção de
extensão de largura de banda de MPEG 4.
Basicamente, é preferido definir um instante de
tempo de parada de um quadro em resposta a um sinal de saída de
detector de inclinação espectral ou em resposta a um evento independente do sinal de saída do detector de inclinação espectral. O evento usado pelo calculador de parâmetro de extensão de largura de banda para sinalizar um instante de tempo de parada de quadro é, por exemplo, a ocorrência de um instante de tempo sendo um período de tempo fixado posteriormente no tempo com relação ao instante de tempo de início. Conforme discutido no contexto da Figura 1c, este período de tempo fixado pode ser baixo ou alto. Quando este período de tempo fixado for alto, então isto significa que s, existe uma resolução de tempo baixa, e quando este período de tempo fixado for baixo, então isto significa que existe uma resolução :>
de tempo alta. Preferivelmente, quando o detector de transiente 14 sinaliza um transiente, o primeiro período de tempo é definido, 5 mas uma resolução de tempo baixa é aplicada. Nesta configuração, o período de tempo fixado posteriormente no tempo com relação ao instante de tempo de início é, portanto, mais alto que no outro caso, onde um sinal de instante de tempo de início é enviado pelo detector de inclinação espectral. Quando um instante de tempo de início é enviado pelo detector de inclinação espectral, então, isto significa que existe uma porção sibilante em um sinal de fala, e, portanto, uma resolução de tempo alta é necessária. Portanto, o período de tempo fixado é definido como sendo menor que no caso onde um instante de tempo de início para um quadro foi sinalizado pelo detector de transiente 14 na Figura la.
Em outras configurações, um detector de inclinação espectral pode ser baseado na informação linguística de modo a detectar sibilantes na fala. Quando, por exemplo, um sinal de fala 1 tem associado metainformação tal como de soletração de fonética internacional, então uma análise desta metainformação proverá, também, uma detecção sibilante de uma porção da fala. Neste contexto, a porção de metadados do sinal de áudio é analisada.
Embora alguns aspectos tenham sido descritos no contexto de um aparelho, fica claro que estes aspectos também re25 presentam uma descrição do método correspondente, onde um bloco ou dispositivo corresponde a uma etapa do método ou uma característica de uma etapa do método. Analogamente, aspectos descritos no contexto de uma etapa de método também representam uma descrição de um bloco correspondente ou item ou característica de um aparelho correspondente.
Dependendo de certos requisitos de implementação, configurações da invenção podem ser implementadas em hardware ou em software. A implementação pode ser executada usando um meio de armazenamento digital, por exemplo, um disco removível, um DVD, um CD, um ROM, um PROM, um EPROM, um EEPROM ou uma memória FLASH, tendo sinais de controle eletronicamente legíveis armazenados no mesmo, que cooperam (ou são capazes de cooperar) com um sistema de computador programável, de modo que o método respectivo seja executado.
Algumas configurações de acordo com a invenção compreendem um veículo de dados tendo sinais de controle eletronicamente legíveis, que são capazes de cooperar com um sistema de computador programável, de modo que um dos métodos descritos aqui seja executado.
Geralmente, configurações da presente invenção podem ser implementadas como um produto de programa de computador com um código de programa, o código de programa sendo operacional para executar um dos métodos quando o produto de programa de computador opera em um computador. O código do programa pode, por exemplo, ser armazenado em um veículo legível por máquina.
Outras configurações compreendem o programa do computador para executar um dos métodos descritos aqui, armazenados em um veículo legível por máquina.
Em outras palavras, uma configuração do método inventivo é, portanto, um programa de computador tendo um código de programa para executar um dos métodos descritos aqui, quando o programa de computador opera em um computador.
Uma configuração adicional dos métodos inventivos é, portanto, um veiculo de dados (ou um meio de armazenamento digital, ou um meio legível por computador) compreendendo, gravado no mesmo, o programa de computador para executar um dos métodos descritos aqui.
Uma configuração adicional do método inventivo é, portanto, uma corrente de dados ou uma seqüência de sinais representando o programa de computador para executar um dos métodos descritos aqui. A corrente de dados ou a seqüência de sinais pode, por exemplo, ser configurada para ser transferida via uma conexão de comunicação de dados, por exemplo, via Internet.
Uma configuração adicional compreende um meio de processamento, por exemplo, um computador, ou um dispositivo lógico programável, configurado ou adaptado para executar um dos métodos descritos aqui.
Uma configuração adicional compreende um computador tendo instalado no mesmo o programa de computador para executar um dos métodos descritos aqui.
Em algumas configurações, um dispositivo lógico programável (por exemplo, um arranjo de porta programável de campo) pode ser usada para executar algumas ou todas as funcionalidades dos métodos descritos aqui. Em algumas configurações, um arranjo de porta programável de campo pode cooperar com um microprocessador de modo a executar um dos métodos descritos aqui. De forma geral, os métodos são preferivelmente executados por qualquer aparelho de hardware.
As configurações descritas acima são meramente ilustrativas dos princípios da presente invenção. É compreendido que modificações e variações dos arranjos e dos detalhes descritos aqui ficarão aparentes para outros especializados na técnica. Portanto, é o objetivo estar limitada apenas pelo escopo das reivindicações de patente independentes e não pelos detalhes específicos 5 apresentados como descrição e explanação das configurações aqui.

Claims (19)

  1. REIVINDICAÇÕES
    1. Aparelho para calcular dados de extensão de largura de banda de um sinal de áudio em um sistema de extensão de largura de banda, no qual uma primeira banda espectral é codificada (340) com um primeiro número de bits e uma segunda banda espectral diferente da primeira banda espectral é codificada (210) com um segundo número de bits, o segundo número de bits sendo menor que o primeiro número de bits, caracterizado pelo fato de que compreende: um calculador de parâmetro de extensão de largura de banda (10) controlável para calcular parâmetros de extensão de largura de banda para a segunda banda de freqüência de uma maneira em âmbito de quadro para uma seqüência de quadros do sinal de áudio, onde um quadro tem um instante de tempo de inicio controlável; e um detector de inclinação espectral (12) para detectar inclinação espectral em uma porção de tempo do sinal de áudio e para sinalizar o instante de tempo de inicio para o quadro dependendo da inclinação espectral do sinal de áudio.
  2. 2. Aparelho, de acordo com a reivindicação 1, caracterizado pelo fato de que o detector de inclinação espectral (12) está configurado para sinalizar o instante de tempo de inicio do quadro quando um sinal de uma inclinação espectral da porção de tempo do sinal de áudio é diferente de um sinal da inclinação espectral do sinal de áudio na porção de tempo precedente do sinal de áudio.
  3. 3. Aparelho, de acordo com as reivindicações 1 ou 2, caracterizado pelo fato de que o detector de inclinação espectral (12) é operacional para executar uma análise LPC da porção de tempo para estimar um ou mais coeficientes LPC de ordem baixa θ para analisar o um ou mais coeficientes LPC de ordem baixa para determinar se a porção do sinal de áudio tem uma inclinação espectral positiva ou negativa.
  4. 4. Aparelho, de acordo com a reivindicação 3, caracterizado pelo fato de que o detector de inclinação espectral (12) é operacional para calcular apenas o primeiro coeficiente LPC e não para calcular coeficientes LPC adicionais e analisar um sinal do primeiro coeficiente LPC e sinalizar um instante de tempo de inicio do quadro dependendo do sinal do primeiro coeficiente LPC.
  5. 5. Aparelho, de acordo com a reivindicação 4, caracterizado pelo fato de que o detector de inclinação espectral (12) é configurado para determinar a inclinação espectral como uma inclinação espectral negativa, na qual a energia espectral diminui de frequências menores para frequências maiores, quando o primeiro coeficiente LPC tem um sinal positivo, e para detectar a inclinação espectral como uma inclinação espectral positiva, na qual a energia espectral aumenta de freqüências menores para frequências maiores, quando o primeiro coeficiente LPC tem um sinal negativo.
  6. 6. Aparelho, de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) é configurado para calcular um ou mais dos parâmetros a seguir para o quadro:
    parâmetros de envelope espectral, parâmetros de ruido, parâmetros de filtragem inversa, ou parâmetros de harmônica faltante.
  7. 7. Aparelho, de acordo com qualquer uma das reivindicações anteriores, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) é configurado para definir o instante de tempo de início de um quadro dependendo de um instante de tempo de início da porção de tempo do sinal de áudio, onde a detecção de inclinação espectral é baseada.
  8. 8. Aparelho, de acordo com a reivindicação 7, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) é configurado para definir o instante de tempo de início do quadro idêntico ao instante de tempo de início da porção de tempo, onde a mudança de inclinação espectral foi detectada.
  9. 9. Aparelho, de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) ou o detector de inclinação espectral (12) são configurados para processar quadros de sobreposição ou porções de tempo.
  10. 10. Aparelho, de acordo com qualquer uma das reivindicações anteriores, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) é operacional para definir um instante de tempo de parada de um quadro em resposta ao detector de inclinação espectral (12) ou em resposta a um evento independente em uma inclinação espectral do sinal de áudio.
  11. 11. Aparelho, de acordo com a reivindicação 10, caracterizado pelo fato de que o evento usado pelo calculador de parâmetro de extensão de largura de banda controlável (10) é a ocorrência de um instante de tempo sendo um período de tempo fixado posterior no tempo em relação ao instante de tempo de início.
  12. 12. Aparelho, de acordo com qualquer uma das rei vindicações anteriores, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) é configurado para executar um processamento seletivo de freqüência do sinal de áudio (320) na segunda banda espectral com uma resolução de freqüência, e onde o detector de inclinação espectral (12) é operacional para processar a porção de tempo no domínio de tempo ou de uma maneira seletiva de freqüência com uma resolução de freqüência sendo menor que a resolução de freqüência usada pelo calculador de parâmetro de extensão de largura de banda controlável (10) .
  13. 13. Aparelho, de acordo com qualquer uma das reivindicações anteriores, caracterizado pelo fato de que compreende ainda: um detector de transiente (14) para controlar o calculador de parâmetro de extensão de largura de banda controlável (10) para definir o instante de tempo de inicio, quando um transiente é detectado, onde o calculador de parâmetro de extensão de largura de banda controlável (10) é configurado para definir um instante de tempo de inicio, quando tanto o detector de inclinação espectral (12) quanto o detector de transiente (14) enviou um sinal de instante de tempo de início.
  14. 14. Aparelho, de acordo com qualquer uma das reivindicações anteriores, caracterizado pelo fato de que compreende ainda um detector de fala/música (15) , o detector de fala/música sendo operacional para ativar o detector de inclinação espectral (12) em uma porção de fala do sinal de áudio e para desativar o detector de inclinação espectral (12) em uma porção de música do sinal de áudio.
  15. 15. Aparelho, de acordo com qualquer uma das rei vindicações anteriores, caracterizado pelo fato de que o detector de inclinação espectral (12) é configurado para determinar se a porção de tempo compreende uma sibilante de uma porção de fala ou uma não sibilante de uma porção de fala, onde o detector de inclinação espectral (12) é configurado para sinalizar o instante de tempo de início para o quadro quando uma mudança de uma não sibilante para uma sibilante é detectada.
  16. 16. Aparelho, de acordo com a reivindicação 13, caracterizado pelo fato de que o calculador de parâmetro de extensão de largura de banda controlável (10) é configurado para aplicar a sequência de quadros com uma resolução de tempo mais alta em resposta a uma sinalização do detector de inclinação espectral (12) comparado a uma resolução de tempo aplicada, quando o calculador de parâmetro de extensão de largura de banda controlável (10) recebeu uma sinalização' do detector de transiente (14) em uma porção de tempo do sinal de áudio, para o qual o detector de inclinação espectral (12) não sinalizou um instante de tempo de início .
  17. 17. Aparelho, de acordo com a reivindicação 1, caracterizado pelo fato de que o detector de inclinação espectral (12) é configurado para sinalizar o instante de tempo de início do quadro quando uma diferença entre um valor de inclinação espectral da porção de tempo do sinal de áudio e um valor de inclinação espectral do sinal de áudio na porção de tempo precedente do sinal de áudio é maior que um valor de limite predeterminado.
  18. 18. Método para calcular dados de extensão de largura de banda de um sinal de áudio em um sistema de extensão de largura de banda, caracterizado pelo fato de que uma primeira ban da espectral é codificada (340) com um primeiro número de bits e uma segunda banda espectral diferente da primeira banda espectral é codificada (210) com um segundo número de bits, o segundo número de bits sendo menor que o primeiro número de bits, compreendendo:
    5 calcular (10) parâmetros de extensão de largura de banda para a segunda banda de frequência de uma maneira em âmbito de quadro para uma sequência de quadros do sinal de áudio, onde um quadro tem
    um instante de tempo de inicio controlável; e detectar (12) uma inclinação espectral em uma porção de tempo do sinal de áudio e 10 sinalizar o instante de tempo de inicio para o quadro dependendo
    da inclinação espectral do sinal de áudio.
  19. 19. Programa de computador tendo um código de programa para executar, ao operar em um computador, o método caracterizado pelo fato de que é para calcular dados de extensão de 15 largura de banda de acordo com a reivindicação 18.
BRPI0904958-4A 2008-07-11 2009-06-23 Aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral BRPI0904958B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US7987108P 2008-07-11 2008-07-11
US61/079,871 2008-07-11
PCT/EP2009/004520 WO2010003543A1 (en) 2008-07-11 2009-06-23 Apparatus and method for calculating bandwidth extension data using a spectral tilt controlling framing

Publications (2)

Publication Number Publication Date
BRPI0904958A2 BRPI0904958A2 (pt) 2015-06-30
BRPI0904958B1 true BRPI0904958B1 (pt) 2020-03-03

Family

ID=40929509

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0904958-4A BRPI0904958B1 (pt) 2008-07-11 2009-06-23 Aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral

Country Status (19)

Country Link
US (1) US8788276B2 (pt)
EP (1) EP2176862B1 (pt)
JP (1) JP5010743B2 (pt)
KR (1) KR101182258B1 (pt)
CN (1) CN101836253B (pt)
AR (1) AR072703A1 (pt)
AT (1) ATE522901T1 (pt)
AU (1) AU2009267529B2 (pt)
BR (1) BRPI0904958B1 (pt)
CA (1) CA2699316C (pt)
ES (1) ES2372014T3 (pt)
HK (1) HK1142432A1 (pt)
IL (1) IL203928A (pt)
MY (1) MY150373A (pt)
PL (1) PL2176862T3 (pt)
RU (1) RU2443028C2 (pt)
TW (1) TWI457914B (pt)
WO (1) WO2010003543A1 (pt)
ZA (1) ZA201000941B (pt)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7711123B2 (en) * 2001-04-13 2010-05-04 Dolby Laboratories Licensing Corporation Segmenting audio signals into auditory events
US9247547B2 (en) * 2009-10-15 2016-01-26 Qualcomm Incorporated Downlink and uplink resource element mapping for carrier extension
WO2011048792A1 (ja) 2009-10-21 2011-04-28 パナソニック株式会社 音響信号処理装置、音響符号化装置および音響復号装置
RU2518682C2 (ru) 2010-01-19 2014-06-10 Долби Интернешнл Аб Усовершенствованное гармоническое преобразование на основе блока поддиапазонов
EP2362375A1 (en) * 2010-02-26 2011-08-31 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Apparatus and method for modifying an audio signal using harmonic locking
WO2011110494A1 (en) 2010-03-09 2011-09-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Improved magnitude response and temporal alignment in phase vocoder based bandwidth extension for audio signals
PL3570278T3 (pl) 2010-03-09 2023-03-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Rekonstrukcja wysokiej częstotliwości wejściowego sygnału audio przy użyciu kaskadowych banków filtrów
CA2803273A1 (en) * 2010-07-05 2012-01-12 Nippon Telegraph And Telephone Corporation Encoding method, decoding method, encoding device, decoding device, program, and recording medium
US9047875B2 (en) * 2010-07-19 2015-06-02 Futurewei Technologies, Inc. Spectrum flatness control for bandwidth extension
CN102436820B (zh) 2010-09-29 2013-08-28 华为技术有限公司 高频带信号编码方法及装置、高频带信号解码方法及装置
CN102419977B (zh) * 2011-01-14 2013-10-02 展讯通信(上海)有限公司 瞬态音频信号的判别方法
US8762147B2 (en) * 2011-02-02 2014-06-24 JVC Kenwood Corporation Consonant-segment detection apparatus and consonant-segment detection method
EP2710588B1 (en) 2011-05-19 2015-09-09 Dolby Laboratories Licensing Corporation Forensic detection of parametric audio coding schemes
JP5807453B2 (ja) * 2011-08-30 2015-11-10 富士通株式会社 符号化方法、符号化装置および符号化プログラム
CN103035248B (zh) * 2011-10-08 2015-01-21 华为技术有限公司 音频信号编码方法和装置
ES2549953T3 (es) * 2012-08-27 2015-11-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para la reproducción de una señal de audio, aparato y método para la generación de una señal de audio codificada, programa de ordenador y señal de audio codificada
EP2709106A1 (en) * 2012-09-17 2014-03-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for generating a bandwidth extended signal from a bandwidth limited audio signal
BR122020007931B1 (pt) 2013-01-21 2022-08-30 Dolby International Ab Dispositivo de processamento de áudio e método para decodificar um ou mais quadros de um fluxo de bits de áudio codificado
RU2618919C2 (ru) * 2013-01-29 2017-05-12 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Устройство и способ для синтезирования аудиосигнала, декодер, кодер, система и компьютерная программа
TR201908919T4 (tr) 2013-01-29 2019-07-22 Fraunhofer Ges Forschung Celp benzeri kodlayıcılar için yan bilgi olmadan gürültü doldurumu.
WO2014118179A1 (en) * 2013-01-29 2014-08-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoders, audio decoders, systems, methods and computer programs using an increased temporal resolution in temporal proximity of onsets or offsets of fricatives or affricates
KR101757349B1 (ko) 2013-01-29 2017-07-14 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에.베. 부대역들의 시간적 평활을 이용하여 주파수 향상 신호를 발생시키는 장치 및 방법
PT2959481T (pt) 2013-02-20 2017-07-13 Fraunhofer Ges Forschung Aparelho e método para criar um sinal codificado ou para descodificar um sinal de áudio codificado usando uma parte de sobreposição múltipla
US9842598B2 (en) * 2013-02-21 2017-12-12 Qualcomm Incorporated Systems and methods for mitigating potential frame instability
CN117253498A (zh) * 2013-04-05 2023-12-19 杜比国际公司 音频信号的解码方法和解码器、介质以及编码方法
MX353188B (es) 2013-06-10 2018-01-05 Fraunhofer Ges Forschung Aparato y método para codificación, procesamiento y decodificación de la envolvente de la señal de audio mediante división de la envolvente de la señal de audio, mediante el uso de cuantificación de distribución y codificación.
WO2014198726A1 (en) 2013-06-10 2014-12-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for audio signal envelope encoding, processing and decoding by modelling a cumulative sum representation employing distribution quantization and coding
EP2830054A1 (en) 2013-07-22 2015-01-28 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder and related methods using two-channel processing within an intelligent gap filling framework
TWI557726B (zh) * 2013-08-29 2016-11-11 杜比國際公司 用於決定音頻信號的高頻帶信號的主比例因子頻帶表之系統和方法
CN108172239B (zh) * 2013-09-26 2021-01-12 华为技术有限公司 频带扩展的方法及装置
DK3058567T3 (en) * 2013-10-18 2017-08-21 ERICSSON TELEFON AB L M (publ) CODING POSITIONS OF SPECTRAL PEAKS
US9640185B2 (en) * 2013-12-12 2017-05-02 Motorola Solutions, Inc. Method and apparatus for enhancing the modulation index of speech sounds passed through a digital vocoder
US9542955B2 (en) 2014-03-31 2017-01-10 Qualcomm Incorporated High-band signal coding using multiple sub-bands
CN106486129B (zh) * 2014-06-27 2019-10-25 华为技术有限公司 一种音频编码方法和装置
US10847170B2 (en) 2015-06-18 2020-11-24 Qualcomm Incorporated Device and method for generating a high-band signal from non-linearly processed sub-ranges
US9837089B2 (en) * 2015-06-18 2017-12-05 Qualcomm Incorporated High-band signal generation
JP6705142B2 (ja) * 2015-09-17 2020-06-03 ヤマハ株式会社 音質判定装置及びプログラム
JP6718516B2 (ja) * 2016-03-07 2020-07-08 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ ハイブリッドコンシールメント方法:オーディオコーデックにおける周波数および時間ドメインパケットロスの組み合わせ
EP3382702A1 (en) 2017-03-31 2018-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for determining a predetermined characteristic related to an artificial bandwidth limitation processing of an audio signal
US10825467B2 (en) * 2017-04-21 2020-11-03 Qualcomm Incorporated Non-harmonic speech detection and bandwidth extension in a multi-source environment
TWI652597B (zh) * 2017-12-05 2019-03-01 緯創資通股份有限公司 電子裝置及其解鎖方法
US11430464B2 (en) * 2018-01-17 2022-08-30 Nippon Telegraph And Telephone Corporation Decoding apparatus, encoding apparatus, and methods and programs therefor
EP3671741A1 (en) * 2018-12-21 2020-06-24 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Audio processor and method for generating a frequency-enhanced audio signal using pulse processing
CN113348507A (zh) * 2019-01-13 2021-09-03 华为技术有限公司 高分辨率音频编解码

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100261254B1 (ko) * 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 데이터 부호화/복호화방법 및 장치
DE19736669C1 (de) * 1997-08-22 1998-10-22 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erfassen eines Anschlags in einem zeitdiskreten Audiosignal sowie Vorrichtung und Verfahren zum Codieren eines Audiosignals
US6233550B1 (en) * 1997-08-29 2001-05-15 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
CA2252170A1 (en) * 1998-10-27 2000-04-27 Bruno Bessette A method and device for high quality coding of wideband speech and audio signals
SE9903552D0 (sv) * 1999-01-27 1999-10-01 Lars Liljeryd Efficient spectral envelope coding using dynamic scalefactor grouping and time/frequency switching
US7010480B2 (en) * 2000-09-15 2006-03-07 Mindspeed Technologies, Inc. Controlling a weighting filter based on the spectral content of a speech signal
US6615169B1 (en) * 2000-10-18 2003-09-02 Nokia Corporation High frequency enhancement layer coding in wideband speech codec
EP1701340B1 (en) * 2001-11-14 2012-08-29 Panasonic Corporation Decoding device, method and program
ES2261974T3 (es) 2002-08-01 2006-11-16 Matsushita Electric Industrial Co., Ltd. Parato decodificador y metodo de decodificacion audio basado en una duplicacion de banda espectral.
WO2004084467A2 (en) * 2003-03-15 2004-09-30 Mindspeed Technologies, Inc. Recovering an erased voice frame with time warping
DE602004027750D1 (de) * 2003-10-23 2010-07-29 Panasonic Corp Spektrum-codierungseinrichtung, spektrum-decodierungseinrichtung, übertragungseinrichtung für akustische signale, empfangseinrichtung für akustische signale und verfahren dafür
JP2006023658A (ja) 2004-07-09 2006-01-26 Matsushita Electric Ind Co Ltd オーディオ信号符号化装置及びオーディオ信号符号化方法
WO2006107833A1 (en) * 2005-04-01 2006-10-12 Qualcomm Incorporated Method and apparatus for vector quantizing of a spectral envelope representation
TWI271703B (en) 2005-07-22 2007-01-21 Pixart Imaging Inc Audio encoder and method thereof
JP2007333785A (ja) 2006-06-12 2007-12-27 Matsushita Electric Ind Co Ltd オーディオ信号符号化装置およびオーディオ信号符号化方法
US8260609B2 (en) * 2006-07-31 2012-09-04 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of inactive frames
TWI308740B (en) 2007-01-23 2009-04-11 Ind Tech Res Inst Method of a voice signal processing

Also Published As

Publication number Publication date
WO2010003543A1 (en) 2010-01-14
EP2176862B1 (en) 2011-08-31
KR20100083135A (ko) 2010-07-21
HK1142432A1 (en) 2010-12-03
CA2699316C (en) 2014-03-18
AU2009267529B2 (en) 2011-03-03
CA2699316A1 (en) 2010-01-14
TWI457914B (zh) 2014-10-21
AU2009267529A1 (en) 2010-01-14
MY150373A (en) 2013-12-31
PL2176862T3 (pl) 2012-03-30
US20110099018A1 (en) 2011-04-28
EP2176862A1 (en) 2010-04-21
ES2372014T3 (es) 2012-01-13
AR072703A1 (es) 2010-09-15
CN101836253A (zh) 2010-09-15
JP2011501225A (ja) 2011-01-06
TW201007709A (en) 2010-02-16
US8788276B2 (en) 2014-07-22
CN101836253B (zh) 2012-06-13
JP5010743B2 (ja) 2012-08-29
ATE522901T1 (de) 2011-09-15
RU2010109206A (ru) 2011-09-20
ZA201000941B (en) 2011-04-28
BRPI0904958A2 (pt) 2015-06-30
KR101182258B1 (ko) 2012-09-14
RU2443028C2 (ru) 2012-02-20
IL203928A (en) 2013-06-27

Similar Documents

Publication Publication Date Title
BRPI0904958B1 (pt) Aparelho e método para calcular dados de extensão de largura de banda usando um quadro controlado por inclinação espectral
US8296159B2 (en) Apparatus and a method for calculating a number of spectral envelopes
US10354665B2 (en) Apparatus and method for generating a frequency enhanced signal using temporal smoothing of subbands
BR112014021054B1 (pt) Controle de coerência de fase para sinais harmônicos nos codecs de áudio perceptuais
AU2013257391B2 (en) An apparatus and a method for generating bandwidth extension output data
BRPI0910523B1 (pt) Aparelho e método para gerar dados de saída de extensão de largura de banda

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 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: 10 (DEZ) ANOS CONTADOS A PARTIR DE 03/03/2020, OBSERVADAS AS CONDICOES LEGAIS.