BRPI0620838A2 - método e dispositivo para uma eficiente ocultação de apagamento de quadro em codecs de voz - Google Patents

método e dispositivo para uma eficiente ocultação de apagamento de quadro em codecs de voz Download PDF

Info

Publication number
BRPI0620838A2
BRPI0620838A2 BRPI0620838-0A BRPI0620838A BRPI0620838A2 BR PI0620838 A2 BRPI0620838 A2 BR PI0620838A2 BR PI0620838 A BRPI0620838 A BR PI0620838A BR PI0620838 A2 BRPI0620838 A2 BR PI0620838A2
Authority
BR
Brazil
Prior art keywords
frame
pulse
signal
decoder
erased
Prior art date
Application number
BRPI0620838-0A
Other languages
English (en)
Inventor
Tommy Vaillancourt
Redwan Salami
Milan Jelinek
Philippe Gournay
Original Assignee
Voiceage Corp
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=38217654&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BRPI0620838(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Voiceage Corp filed Critical Voiceage Corp
Publication of BRPI0620838A2 publication Critical patent/BRPI0620838A2/pt

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

MéTODO E DISPOSITIVO PARA UMA EFICIENTE OCULTAçãO DE APAGAMENTO DE QUADRO EM CODECS DE VOZ. A invenção refere-se a um método e dispositivo para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, que compreende, no codificador, determinar os parâmetros de ocultação/recuperação que incluem pelo menos as informações de fase relativas aos quadros do sinal sonoro codificado. Os parâmetros de ocultação/recuperação determinados no codificador são transmitidos para o decodificador e, no decodificador, a ocultação de apagamento de quadro é conduzida em resposta aos parâmetros de ocultação/recuperação recebidos. A ocultação de apagamento de quadro compreende ressincronizar, em res- posta às informações de fase recebidas, os quadros ocultados por apagamento com os quadros correspondentes do sinal sonoro codificado no codificador. Quando nenhum parâmetro de ocultação/recuperação é transmitido para o decodificador, as informações de fase de cada quadro do sinal sonoro codificado que foram apagados durante a transmissão do codificador para o decodificador são estimadas no decodificador. Também, a ocultação de a- pagamento de quadro é conduzida no decodificador em resposta às informações de fase estimadas, em que a ocultação de apagamento de quadro compreende ressincronizar, em resposta às informações de fase estimadas, cada quadro ocultado por apagamento com um quadro correspondente do sinal sonoro codificado no codificador.

Description

Relatório Descritivo da Patente de Invenção para "MÉTODO E DISPOSITIVO PARA UMA EFICIENTE OCULTAÇÃO DE APAGAMENTO DE QUADRO EM CODECS DE VOZ ".
CAMPO DA INVENÇÃO
A presente invenção refere-se a uma técnica para codificar digi- talmente um sinal sonoro, especificamente mas não exclusivamente um sinal de voz, em vista de transmitir e/ou sintetizar este sinal sonoro. Mais especifi- camente, a presente invenção refere-se a uma codificação e decodificação robustas de sinais sonoros para manter um bom desempenho no caso de quadro(s) apagado(s) devido a, por exemplo, erros de canal em sistemas sem fio ou pacotes perdidos em aplicações dè voz por rede de pacotes.
ANTECEDENTES DA INVENÇÃO
A demanda por técnicas de codificação de voz de banda estreita e larga digital com um bom compromisso entre a qualidade subjetiva e a ta- xa de bits está crescendo em várias áreas de aplicação tal como teleconfe- rência, multimídia, e comunicações sem fio. Até recentemente, uma largura de banda de telefone que estava restrita a uma faixa de 200-3400 Hz estava sendo utilizada em aplicações de codificação de voz. No entanto, as aplica- ções de voz de banda larga provêem uma inteligibilidade aumentada e uma naturalidade em comunicação comparadas com a largura de banda de tele- fone convencional. Uma largura de banda na faixa de 50-7000 Hz foi consi- derada ser suficiente para fornecer uma boa qualidade dando uma impres- são de comunicação face a face. Para os sinais de áudio gerais, esta largura de banda fornece uma qualidade subjetiva aceitável, mas continua mais bai- xa do que a qualidade de rádio FM ou CD que operam em faixas de 20- 16000 Hz e 20-20000 Hz, respectivamente.
Um codificador de voz converte um sinal de voz em um fluxo de bits digital o qual é transmitido por um canal de comunicação ou armazena- do em um meio de armazenamento. O sinal de voz é digitalizado, isto é, a - mostrado e quantizado com usualmente 16 bits por amostra. O codificador de voz tem a função de representar estas amostras digitais com um menor número de bits enquanto mantendo uma boa qualidade de voz subjetiva. O decodificador ou sintetizador de voz opera sobre o fluxo de bits transmitido ou armazenado e converte-o de volta para um sinal sonoro.
A codificação de Predição Linear Excitada Por Código (CELP) é uma das melhores técnicas disponíveis para conseguir um bom compromis- so entre a qualidade subjetiva e a taxa de bits. Esta técnica de codificação é uma base de diversos padrões de codificação de voz tanto em aplicações sem fio quanto com fio. Na codificação de CELP, o sinal de voz amostrado é processado em blocos sucessivos de L amostras usualmente denominadas quadros, onde L é um número predeterminado que corresponde tipicamente a 10-30 ms de sinal de voz. Um filtro de predição linear (LP) é computado e transmitido a cada quadro. A computação do filtro de LP tipicamente neces- sita de um lookahead, um segmento de voz de 5-15 ms do quadro subse- qüente. O quadro de L amostras é dividido em blocos menores denominados subquadros. Usualmente o número de subquadros é três ou quatro, o que resulta em subquadros de 4-10 ms. Em cada subquadro, um sinal de excita- ção é usualmente obtido de dois componentes, a excitação passada e a ex- citação de livro de código fixa inovadora. O componente formado da excita- ção passada é freqüentemente referido como excitação de livro de código adaptável ou de passo. Os parâmetros que caracterizam o sinal de excitação são codificados e transmitidos para o decodificador, onde o sinal de excita- ção reconstruído é utilizado como a entrada do filtro de LP.
Como as aplicações principais da codificação de voz de baixa taxa de bits são os sistemas de comunicação móvel sem fio e de voz por redes de pacote, então aumentar a robustez de codecs de voz no caso de apagamentos de quadros torna-se de importância significativa. Nos sistemas de celular sem fio, a energia do sinal recebido pode exibir freqüentes desva- necimentos severos que resultam em altas taxas de erro de bit e isto torna- se mais evidente nos limites de célula. Neste caso o decodificador de cana não consegue corrigir os erros no quadro recebido e como uma consequên- cia, o detector de erros usualmente utilizado após o decodificador de canal declarará o quadro como apagado. Nas aplicações de voz por rede de paco- tes, o sinal de voz é empacotado onde usualmente cada pacote corresponde a 20-40 ms de sinal sonoro. Nas comunicações comutadas em pacote, uma queda de pacote pode ocorrer em um roteador se o número de pacotes tor- nar-se muito grande, ou o pacote pode atingir o receptor após um longo re- tardo e este deve ser declarado como perdido se este retardo for maior do que o comprimento de um armazenamento de tremulação no lado do recep- tor. Nestes sistemas, o codec está sujeito a tipicamente a 3 a 5% de taxas de apagamento de quadro. Mais ainda, a utilização de codificação de voz de banda larga é um recurso para estes sistemas de modo a permitir que estes compitam com a PSTN (rede telefônica comutada pública) tradicional que utiliza os sinais de voz de anda estreita de legado.
O livro de códigos adaptável, ou o preditor de passo, em CELP desempenha uma função na manutenção de uma alta qualidade de voz a baixas taxas de bits. No entanto, como o conteúdo do livro de códigos adap- tável está baseado no sinal de quadros passados, isto torna o modelo de codec sensível à perda de quadros. No caso de quadros apagados ou perdi- dos, o conteúdo do livro de códigos adaptável no decodificador torna-se dife- rente de seu conteúdo no codificador. Assim, após um quadro perdido ser ocultado e bons quadros conseqüentes serem recebidos, o sinal sintetizado nos bons quadros recebidos é diferente do sinal de síntese pretendido já que a contribuição do livro de códigos adaptável foi mudada. O impacto de um quadro perdido depende da natureza do segmento de voz no qual o apaga- mento ocorreu. Se o apagamento ocorrer em um segmento estacionário do sinal, então uma ocultação de apagamento de quadro eficiente pode ser e- xecutada e o impacto sobre os bons quadros conseqüentes pode ser mini- mizado. Por outro lado, se o apagamento ocorrer em um início de voz ou em uma transição, o efeito do apagamento pode propagar através de diversos quadros. Por exemplo, se o início de um segmento de voz for perdido, então o primeiro período de passo estará faltando do conteúdo de livro de códigos adaptável. Isto terá um severo efeito sobre o preditor de passo nos bons quadros conseqüentes, resultando em um tempo mais longo antes que o sinal de síntese convirja para aquele pretendido no codificador.
SUMÁRIO DA INVENÇÃO Mais especificamente, de acordo com um primeiro aspecto da presente invenção, está provido um método para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados du- rante a transmissão de um codificador para um decodificador e para a recu- peração do decodificador após os apagamentos de quadros, o método com- preendendo: no codificador, determinar os parâmetros de oculta- ção/recuperação que incluem pelo menos as informações de fase relativas aos quadros do sinal sonoro codificado; transmitir para o decodificador os parâmetros de ocultação/recuperação determinados no codificador; e, no decodificador, conduzir a ocultação de apagamento de quadro em resposta aos parâmetros de ocultação/recuperação recebidos, em que a ocultação de apagamento de quadro compreende ressincronizar, em resposta às informa- ções de fase recebidas, os quadros ocultados por apagamento com os qua- dros correspondentes do sinal sonoro codificado no codificador.
De acordo com um segundo aspecto da presente invenção, está provido um dispositivo para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreendendo: no codifi- cador, um meio para determinar os parâmetros de ocultação/recuperação que incluem pelo menos as informações de fase relativas aos quadros do sinal sonoro codificado; um meio para transmitir para o decodificador os pa- râmetros de ocultação/recuperação determinados no codificador; e, no de- codificador, um meio para conduzir a ocultação de apagamento de quadro em resposta aos parâmetros de ocultação/recuperação recebidos, em que o meio para conduzir a ocultação de apagamento de quadro compreende um meio para ressincronizar, em resposta às informações de fase recebidas, os quadros ocultados por apagamento com os quadros correspondentes do sinal sonoro codificado no codificador.
De acordo com um terceiro aspecto da presente invenção, está provido um dispositivo para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreendendo: no codifi- cador, um gerador de parâmetros de ocultação/recuperação que incluem pelo menos as informações de fase relativas aos quadros do sinal sonoro codificado; uma conexão de comunicação para transmitir para o decodifica- dor os parâmetros de ocultação/recuperação determinados no codificador; e, no decodificador, um módulo de ocultação de apagamento de quadro supri- do com os parâmetros de ocultação/recuperação recebidos e que compre- ende um sincronizador que responde às informações de fase recebidas para ressincronizar os quadros ocultados por apagamento com os quadros cor- respondentes do sinal sonoro codificado no codificador.
De acordo com um quarto aspecto da presente invenção, está provido um método para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o método compreendendo, no codifica- dor: estimar as informações de fase de cada quadro do sinal sonoro codifi- cado que foi apagado durante a transmissão do codificador para o decodifi- cador; e conduzir a ocultação de apagamento de quadro em resposta às in- formações de fase estimadas, em que a ocultação de apagamento de qua- dro compreende ressincronizar, em resposta às informações de fase estima- das, cada quadro ocultado por apagamento com um quadro correspondente do sinal sonoro codificado no codificador.
De acordo com um quinto aspecto da presente invenção, está provido um dispositivo para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão dé um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreendendo: um meio para estimar, no decodificador, as informações de fase de cada quadro do sinal sonoro codificado que foi apagado durante a transmissão do codifica- dor para o decodificador; e um meio para conduzir a ocultação de apaga- mento de quadro em resposta às informações de fase estimadas, o meio para conduzir a ocultação de apagamento de quadro compreendendo um meio para ressincronizar, em resposta às informações de fase estimadas, cada quadro ocultado por apagamento com um quadro correspondente do sinal sonoro codificado no codificador.
De acordo com um sexto aspecto da presente invenção, está provido um dispositivo para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreendendo: no decodi- ficador, um estimador de informações de fase de cada quadro do sinal codi- ficado que foi apagado durante a transmissão do codificador para o decodifi- cador; e um módulo de ocultação de apagamento suprido com as informa- ções de fase estimadas e que compreende um sincronizador o qual, em res- posta às informações de fase estimadas, re-sincroniza cada quadro ocultado por apagamento com um quadro correspondente do sinal sonoro codificado no codificador.
Os objetos, vantagens e características acima e outros da pre- sente invenção ficarão mais aparentes quando da leitura da descrição não- restritiva seguinte de uma sua modalidade ilustrativa, dada como um exem- pio somente com referência aos desenhos acompanhantes.
BREVE DESCRIÇÃO DOS DESENHOS
Nos desenhos anexos:
Figura 1 é um diagrama de blocos esquemático de um sistema de comunicação de voz que ilustra um exemplo de aplicação de dispositivos de codificação e de decodificação de voz;
Figura 2 é um diagrama de blocos esquemático de um exemplo de um dispositivo de codificação de CELP;
Figura 3 é um diagrama de blocos esquemático de um exemplo de um dispositivo de decodificação de CELP;
Figura 4 é um diagrama de blocos esquemático de um codifica- dor incorporado com base em núcleo de G.729 (G.729 refere-se à Reco- mendação de ITU-T G.729); Figura 5 é um diagrama de blocos esquemático de um decodifi- cador incorporado com base em núcleo de G.729;
Figura 6 é um diagrama de blocos simplificado do dispositivo de codificação de CELP da Figura 2, em que o módulo de pesquisa de passo de loop fechado, o módulo de calculador de resposta de entrada zero, o mó- dulo de gerador de resposta de impulso, o módulo de pesquisa de excitação inovador e o módulo de atualização de memória foram agrupados em um único módulo de pesquisa de livro de código inovador e de passo de Ioop fechado;
Figura 7 é uma extensão do diagrama de blocos da Figura 4 na qual os módulos relativos aos parâmetros para aperfeiçoar a oculta- ção/recuperação foram adicionados;
Figura 8 é um diagrama esquemático que mostra um exemplo de máquina de estado de classificação de quadro para a ocultação de apa- gamento;
Figura 9 é um fluxograma que mostra um procedimento de ocul- tação da parte periódica da excitação de acordo com uma modalidade ilus- trativa não-restritiva da presente invenção;
Figura 10 é um fluxograma que mostra um procedimento de sin- cronização da parte periódica da excitação de acordo com uma modalidade ilustrativa não-restritiva da presente invenção;
Figura 11 mostra exemplos típicos do sinal de excitação com e sem o procedimento de sincronização;
Figura 12 mostra exemplos do sinal de voz reconstruído utilizan- do os sinais de excitação mostrados na Figura 11; e
Figura 13 é um diagrama de blocos que ilustra um exemplo de caso quando um quadro de início é perdido.
DESCRIÇÃO DETALHADA
Apesar da modalidade ilustrativa da presente invenção ser des- crita na descrição seguinte em relação a um sinal de voz, deve ser mantido em mente que os conceitos da presente invenção igualmente aplicam-se a outros tipos de sinal, especificamente mas não exclusivamente a outros tipos de sinais sonoros.
A Figura 1 ilustra um sistema de comunicação de voz 100 que apresenta a utilização de codificação e decodificação de voz em um contexto ilustrativo da presente invenção. O sistema de comunicação de voz 100 da Figura 1 suporta uma transmissão de um sinal de voz através de um canal de comunicação 101. Apesar deste poder compreender por exemplo um fio, uma conexão ótica ou uma conexão de fibra, o canal de comunicação 101 tipicamente compreende pelo menos em parte uma conexão de freqüência de rádio. Tal conexão de freqüência de rádio freqüentemente suporta múlti- pias comunicações de voz simultâneas que requerem recursos de largura de banda compartilhados tal como pode ser encontrado com os sistemas de telefonia celular. Apesar de não mostrado, o canal de comunicação 101 po- de ser substituído por um dispositivo de armazenamento em uma modalida- de de dispositivo único do sistema 100, para gravar e armazenar o sinal de voz codificado para uma posterior reprodução.
No sistema de comunicação de voz 100 da Figura 1, um micro- fone 102 produz um sinal de voz analógico 103 que é suprido para um con- versor analógico para digital (A/D) 104 para convertê-lo em um sinal de voz digital 105. Um codificador de voz 106 codifica o sinal de voz digital 105 para produzir um conjunto de parâmetros de codificação de sinal 107 que são codificados em uma forma binária e fornecidos para um codificador de canal 108. O codificador de canal opcional 108 adiciona redundância à represen- tação binária dos parâmetros de codificação de sinal 107, antes de transmiti- los pelo canal de comunicação 101.
No receptor, um decodificador de canal 109 utiliza as ditas in- formações redundantes no fluxo de bits recebido 111 para detectar e corrigir os erros de canal que ocorreram durante a transmissão. Um decodificador de voz 110 então converte o fluxo de bits 112 recebido do decodificador de canal 109 de volta para um conjunto de parâmetros de codificação de sinal e cria a partir dos parâmetros de codificação de sinal recebidos um sinal de voz sintetizado digital 113. O sinal de voz sintetizado digital 113 reconstruído no decodificador de voz 110 é convertido para uma forma analógica 114 por um conversor digital para analógico (D/A) 115 e reproduzido através de uma unidade de alto-falante 116.
A modalidade ilustrativa não-restritiva do método de ocultação de apagamento de quadro eficiente descrito no presente relatório descritivo pode ser utilizada com codecs baseados em predição linear ou de banda estreita ou de banda larga. Também, esta modalidade ilustrativa está descri- ta em relação a um codec incorporado com base na Recomendação G.729 padronizada pela International Telecommunication Union (ITU) [Recomen- dação ITU-T G.729 "Coding of speech at 8 kbit/s using conjugate-structure algebraic-code-excited linear-prediction (CS-ACELP)" Genebra, 1996].
O codec incorporado baseado em G.729 foi padronizado pela ITU-T em 2006 e conhecido como Recomendação G.729.1 [Recomendação ITU-T G.729.1 "G.729 based Embedded Variable bit-rate coder: An 8-32 kbit/s scalable wideband coder bitstream interoperable with G.729" Genebra, 2006]. As técnicas descritas no presente relatório descritivo foram implemen- tadas na Recomendação ITU-T G.729.1.
Aqui, deve ser compreendido que a modalidade ilustrativa do método de ocultação de apagamento de quadro eficiente poderia ser aplica- do a outros tipos de codecs. Por exemplo, a modalidade ilustrativa do méto- do de ocultação de apagamento de quadro eficiente apresentado nesta es- pecificação é utilizada em um algoritmo candidato para a padronização de um codec de taxa de bits variável incorporado pela ITU-T. No algoritmo can- didato, a camada de núcleo está baseada em uma técnica de codificação de banda larga similar à AMR-WB (Recomendação ITU-T G.722.2).
Nas seções seguintes, uma vista geral da CELP e do codificador e decodificador incorporado baseado em G.729 será primeiramente forneci- da. Então, a modalidade ilustrativa da nova proposta para aperfeiçoar a ro- bustez do codec será descrita.
VISTA GERAL DO CODIFICADOR DE ACELP
O sinal de voz amostrado é codificado em uma base de bloco por bloco pelo dispositivos de codificação da Figura 2, o qual está partido em onze módulos numerados de 201 até 211. O sinal de voz de entrada 212 é portanto processado em uma base de bloco por bloco, isto é, nos blocos de amostras L acima menciona- dos denominados quadros.
Referindo à Figura 2, o sinal de voz de entrada amostrado 212 é suprido para o módulo de pré-processamento opcional 201. O módulo de pré-processamento 201 pode consistir em um filtro de passagem alta com uma freqüência de corte de 200 Hz para os sinais de banda estreita e uma freqüência de corte de 50 Hz para os sinais de banda larga.
O sinal pré-processado está denotado por s(n), η = 0, 1, 2, ...,L- 1, onde L é o comprimento do quadro o qual é tipicamente de 20 ms (160 amostras a uma freqüência de amostragem de 8 kHz).
O sinal s(n) é utilizado para executar uma análise de LP no mó- dulo 204. A análise de LP é uma técnica bem-conhecida daqueles versados na técnica. Nesta implementação ilustrativa, a proposta de autocorrelação é utilizada. Na proposta de autocorrelação, o sinal s(n) é primeiro colocado em janela utilizando, tipicamente, uma janela de Hamming que tem um compri- mento da ordem de 30-40 ms. As autocorrelações são computadas do sinal em janela, e uma recorrência de Levinson-Durbin é utilizada para computar os coeficientes de filtro de LP au onde i = 1 ,...,p, e onde ρ é a ordem de LP, a qual é tipicamente 10 em codificação de banda estreita e 16 em codificação de banda larga. Os parâmetros a, são os coeficientes da função de transfe- rência A(z) do filtro de LP1 a qual é dada pela seguinte relação:
<formula>formula see original document page 11</formula>
A análise de LP acredita-se ser de outro modo bem-conhecida daqueles versados na técnica e, conseqüentemente, não será adicionalmen- te descrita no presente relatório descritivo.
O módulo 204 também executa uma quantização e uma interpo- lação dos coeficientes de filtro de LP. Os coeficientes de filtro de LP são pri- meiramente transformados em outro domínio equivalente mais adequado para os propósitos de quantização e de interpolação. Os domínios de par espectral de linha (LSP) e de par espectral de imitância (ISP) são dois domí- nios nos quais a quantização e a interpolação podem ser eficientemente e- xecutadas. Na codificação de banda estreita, os 10 coeficientes de filtro de LP a, podem ser quantizados na ordem de 18 a 30 bits utilizando uma quan- tização dividida ou de múltiplos estágios, ou uma sua combinação. O propó- sito da interpolação é de permitir a atualização dos coeficientes de filtro de LP a cada subquadro, enquanto transmitindo-os uma vez a cada quadro, o que aperfeiçoa o desempenho do codificador sem aumentar a taxa de bits. A quantização e a interpolação dos coeficientes de filtro de LP acredita-se se- rem de outro modo bem-conhecidas daqueles versados na técnica e, conse- qüentemente, não serão adicionalmente descritas no presente relatório des- critivo.
Os parágrafos seguintes descreverão o restante das operações de codificação executadas em uma base de subquadro. Nesta implementa- ção ilustrativa, o quadro de entrada de 20 ms é dividido em 4 subquadros de 5 ms (40 amostras na freqüência de amostragem de 8 kHz). Na descrição seguinte, o filtro A(z) denota o filtro de LP interpolado não quantizado do subquadro, e o filtro Â(z) denota o filtro de LP interpolado quantizado do subquadro. O filtro Â(z) é suprido a cada subquadro para um multiplexador 213 para uma transmissão através de um canal de comunicação (não mos- trado).
Nos codificadores de análise por síntese, os parâmetros de pas- so e da inovação ótimos são pesquisados minimizando o erro quadrático médio entre o sinal de voz de entrada 212 e um sinal de voz sintetizado em um domínio perceptivamente ponderado. O sinal ponderado sw(n) é compu- tado em um filtro de ponderação perceptivo 205 em resposta ao sinal s(n). Um exemplo de função de transferência para o filtro de ponderação percep- tivo 205 é dado pela seguinte relação:
W(z) = A(ZZy1)M(ZZy2) onde 0<y2 <y1, ≤1 De modo a simplificar a análise de passo, um intervalo de passo de loop aberto Tol é primeiramente estimado em um módulo de pesquisa de passo de loop aberto 206 do sinal de fala ponderado sw(n). Então, a análise de passo de loop fechado, a qual é executada em um módulo de pesquisa de passo de loop fechado 207 em uma base de subquadro, fica restrita ao redor do intervalo de passo de Ioop aberto TOL o que reduz significativamen- te a complexidade de pesquisa dos parâmetros de LTP (Predição de Longo Prazo) T (intervalo de passo) e b (ganho de passo). A análise de passo de loop fechado é usualmente executada no módulo 206 uma vez a cada 10 ms (dois subquadros) utilizando as técnicas bem-conhecidas daqueles versados na técnica.
O vetor-alvo x para a análise de LTP (Predição de Longo Prazo) é primeiramente computado. Isto é usualmente feito subtraindo a resposta de entrada zero S0 do filtro de síntese ponderado W(z)/Â(z) do sinal de voz ponderado sw(n). Esta resposta de entrada zero S0 é calculada por um calcu- lador de resposta de entrada zero 208 em resposta ao filtro de LP interpola- do quantizado Â(z) da análise de LP, do módulo de quantização e de inter- polação 204 e aos estados iniciais do filtro de síntese ponderado W(z)/Â(z) armazenado no módulo de atualização de memória 211 em resposta aos filtros de LP A(z) e Â(z), e ao vetor de excitação u. Esta operação é bem- conhecida daqueles versados na técnica e, conseqüentemente, não será adicionalmente descrita no presente relatório descritivo.
Um vetor de resposta de impulso N-dimensional h do filtro de síntese ponderado W(z)/Â(z) é computado no gerador de resposta de impul- so 209 utilizando os coeficientes do filtro de LP A(z) e Â(z) do módulo 204. Novamente, esta operação é bem-conhecida daqueles versados na técnica e, conseqüentemente, não será adicionalmente descrita no presente relató- rio descritivo.
Os parâmetros de passo de Ioop fechado (ou livro de códigos de passo) b e T são computados no módulo de pesquisa de passo de Ioop fe- chado 207, o qual utiliza o vetor-alvo χ, o vetor de resposta de impulso h e o intervalo de passo de Ioop aberto T0L como entradas.
A pesquisa de passo consiste em encontrar o melhor intervalo de passo T e de ganho b que minimizem um erro de predição de passo pon- derado quadrático médio, por exemplo
e = ||x-b y ||2
entre o vetor-alvo x e uma versão filtrada escalada da excitação passada. Mais especificamente, na implementação ilustrativa, a pesquisa de passo (livro de códigos de passo ou livro de códigos adaptável) é com- posta de três (3) estágios.
No primeiro estágio, um intervalo de passo de Ioop aberto Tol é estimado no módulo de pesquisa de Ioop aberto 206 em resposta ao sinal de voz ponderado sw(n). Como indicado na descrição acima, esta análise de passo de Ioop aberto é usualmente executada uma vez a cada 10 ms (dois subquadros) utilizando as técnicas bem-conhecidas daqueles versados na técnica.
No segundo estágio, um critério de pesquisa C é pesquisado no módulo de pesquisa de Ioop fechado 207 quanto aos intervalos de passo inteiro ao redor do intervalo de passo de Ioop aberto Tol estimado (usual- mente ± 5), o que simplifica significativamente o procedimento de pesquisa.
Um exemplo do critério de pesquisa C é dado por:
<formula>formula see original document page 14</formula>
onde t denota a transposição de vetor
Uma vez que um intervalo de passo inteiro ótimo é encontrado no segundo estágio, um terceiro estágio da pesquisa (módulo 207) testa, por meio do critério de pesquisa C, as frações ao redor daquele intervalo de passo inteiro ótimo. Por exemplo, a Recomendação uu-T G.729 utiliza uma resolução de subamostra de 1/3.
O índice de livro de códigos de passo T é codificado e transmiti- do para o multiplexador 213 para transmissão através de um canal de co- municação (não mostrado). O ganho de passo b é quantizado e transmitido para o multiplexador 213.
Uma vez que o passo, ou os parâmetros de LTP (Predição de Longo Prazo) b e T são determinados, a próxima etapa é pesquisar pela ex- citação inovadora ótima por meio do módulo de pesquisa de excitação 210 inovador da Figura 2. Primeiro, o vetor-alvo χ é atualizado subtraindo a con- tribuição de LTP:
<formula>formula see original document page 14</formula> onde b é o ganho de passo e yT é o vetor de livro de códigos de passo filtra- do (a excitação passada no retardo T convolvida com a resposta de impulso h).
O procedimento de pesquisa de excitação inovador em CELP é executado em um livro de códigos da inovação para encontrar o vetor de código de excitação ótimo Ck e o ganho g o que minimiza o erro quadrático médio E entre o vetor-alvo x1 e uma versão filtrada escalada do vetor de có- digo ck, por exemplo:
<formula>formula see original document page 15</formula>
onde H é a matriz de convolução triangular inferior derivada do vetor de res- posta de impulso h. O índice k do livro de códigos da inovação que corres- ponde ao vetor de código ótimo Ck encontrado e o ganho g são supridos para o multiplexador 213 para uma transmissão através de um canal de comuni- cação.
Em uma implementação ilustrativa, o livro de códigos da inova- ção utilizado é um livro de códigos dinâmico que compreende um livro de códigos algébrico, seguido por um pré-filtro adaptável F(z) o qual melhora os componentes espectrais especiais de modo a aperfeiçoar a qualidade de voz de síntese, de acordo com a Patente U.S. Número 5,444.816 concedida para Adoul et al. em 22 de Agosto de 1995. Nesta implementação ilustrativa, a pesquisa de livro de códigos inovadora é executada no módulo 210 por meio de um livro de códigos algébrico como descrito nas Patentes U.S. Números 5.444.816 (Adoul et al.) emitida em 22 de Agosto de 1995; 5.699.482 conce- dida para Adoul et al. em 17 de Dezembro de 1997; 5.754.976 concedida para Adoul et al. em 19 de Maio de 1998; e 5.701.392 (Adoul et al.) datada de 23 de Dezembro de 1997.
VISTA GERAL DO DECODIFICADOR DE ACELP
O decodificador de voz 300 da Figura 3 ilustra as várias etapas executadas entre a entrada digital 322 (fluxo de bits de entrada para o de- multiplexador 317) e o sinal de voz amostrado de saída sout·
O demultiplexador 317 extrai os parâmetros de modelo de sínte- se das informações binárias (fluxo de bits de entrada 322) recebidas de um canal de entrada digital. Para cada quadro binário recebido, os parâmetros extraídos são:
- os coeficientes de LP quantizados, interpolados Â(z) também denominados parâmetros de predição de curto prazo (STP) produzidos uma vez por quadro;
- os parâmetros de predição de longo prazo (LTP) Teb (para cada subquadro); e
- o índice de livro de códigos da inovação k e ganho g (para ca- da subquadro).
O sinal de voz corrente é sintetizado com base nestes parâme- tros como será aqui abaixo explicado.
O livro de códigos da inovação 318 responde ao índice k para produzir o vetor de código da inovação Ck, o qual é escalado pelo ganho g decodificado através de um amplificador 324. Na implementação ilustrativa, um livro de códigos da inovação como acima descrito nas Patentes U.S. Números 5.444.816; 5.699.482; 5.754.976 e 5.701.392 é utilizado para pro- duzir o vetor de código inovador Ck-
O vetor de código de passo escalado bvi é produzido pela apli- cação do retardo de passo T a um livro de códigos de passo 301 para pro- duzir um vetor de código de passo. Então, o vetor de código de passo vt é amplificado pelo ganho de passo b por um amplificador 326 para produzir o vetor de código de passo escalado bvT.
O sinal de excitação u é computado pelo somador 320 como:
u = gck + bvT
O conteúdo do livro de códigos de passo 301 é atualizado utili- zando o valor passado do sinal de excitação u armazenado na memória 303 para manter o sincronismo entre o codificador 200 e o decodificador 300.
O sinal sintetizado s'é computado pela filtragem do sinal de ex- citação u através do filtro de síntese de LP 306 o qual tem a forma 1/Â(z), onde Â(z) é o filtro de LP interpolado quantizado do subquadro corrente. Como pode ser visto na Figura 3, os coeficientes de LP interpolados quanti- zados Â(z) sobre a linha 325 do demultiplexador 317 são supridos para o filtro de síntese de LP 306 para ajustar os parâmetros do filtro de síntese de LP 306 conseqüentemente.
O vetor S1 é filtrado através do pós-processador 307 para obter o sinal de voz amostrado de saída sout· O pós-processamento tipicamente consiste em pós-filtragem de curto prazo, pós-filtragem de longo prazo, e escalagem de ganho. Este pode também consistem em um filtro de passa- gem alta para remover as baixas freqüências indesejadas. A pós-filtragem é de outro modo bem-conhecida daqueles versados na técnica.
VISTA GERAL DA CODIFICAÇÃO INCORPORADA BASEADA EM G.729
O codec G.729 está baseado no paradigma de codificação de CELP Algébrico (ACELP) acima explicado. A alocação de bit do codec G.729 a 8 kbit/s é dada na Tabela 1.
Tabela 1
Alocação de bit no G.729 a 8 kbit/s
<table>table see original document page 17</column></row><table>
A Recomendação ITU-T G.729 opera em quadros de 10 ms (80 amostras a uma taxa de amostragem de 8 kHz). Os parâmetros de LP são quantizados e transmitidos uma vez por quadro. O quadro de G.729 é dividi- do em dois subquadros de 5 ms. O retardo de passo (ou índice de livro de códigos adaptável) é quantizado com 8 bits no primeiro subquadro e com 5 bits no segundo subquadro (em relação ao retardo do primeiro subquadro). Os ganhos de passo e de livro de códigos algébrico são juntamente quanti- zados utilizando 7 bits por subquadro. Um livro de códigos algébrico de 17 bits é utilizado para representar a inovação ou a excitação de livro de códi- gos fixo.
O codec incorporado é construído com base no codec G.729 de núcleo. A codificação incorporada, ou codificação em camadas, consiste em uma camada de núcleo e camadas adicionais para uma qualidade aumenta- da ou uma largura de banda codificada aumentada. O fluxo de bits que cor- responde às camadas superiores pode ser largado pela rede conforme ne- cessário (no caso de congestão ou em situação de multidifusão onde algu- mas conexões tem uma taxa de bits disponível mais baixa). O decodificador pode reconstruir o sinal com base nas camadas que este recebe.
Nesta implementação ilustrativa, a camada de núcleo L1 consis- te em G.729 a 8 kbit/s. A segunda camada L2 provê 4 kbit/s adicionais para aperfeiçoar a qualidade de banda estreita na taxa de bit R2=L1+L2 = 12 kbit/s. As dez (10) camadas superiores de 2 kbit/s cada são utilizadas para obter um sinal codificado de banda larga. As dez (10) camadas L3 a L12, correspondem às taxas de bit de 14, 16, ..., e 32 kbit/s, respectivamente. Assim, o codificador incorporado opera como um codificador de banda larga para as taxas de bit de 14 kbit/s e acima.
Por exemplo, o codificador utiliza a codificação preditiva (CELP) nas duas primeiras camadas (G.729 modificado pela adição de um segundo livro de códigos algébrico), e então quantiza no domínio de freqüência o erro de codificação das primeiras camadas. Uma MDCT (Transformada de Co- seno Discreta Modificada) é utilizada para mapear o sinal para o domínio de freqüência. Os coeficientes de MDCT são quantizados utilizando uma quan- tização de vetor algébrica escalável. Para aumentar a largura de banda de áudio, uma codificação paramétrica é aplicada às altas freqüências.
O codificador opera sobre quadros de 20 ms, e precisa de 5 ms de lookahead para a janela de análise de LP. Uma MDCT com 50% de so- breposição requer 20 ms adicionais de Iookahead os quais poderiam ser a- plicados ou no codificador ou no decodificador. Por exemplo, o Iookahead de MDCT é utilizado no decodificador o qual resulte em uma ocultação de apa- gamento de quadro aperfeiçoada como será abaixo explicado. O codificador produz uma saída a 32 kbps, o que traduz-se em quadros de 20 ms que con- tém 640 bits cada. Os bits em cada quadro estão dispostos em camadas incorporadas. A camada 1 tem 160 bits que representam 20 ms de G.729 padrão a 8 kbps (que corresponde a dois quadros de G.729). A camada 2 tem 80 bits, que representam 4 kbps adicionais. Então cada camada adicio- nal (camadas 3 a 12) adiciona 2 kbps, até 32 kbps.
Um diagrama de blocos de um exemplo de codificador incorpo- rado está mostrado na Figura 4.
O sinal de banda larga original χ (401), amostrado a 16 kHz é primeiramente dividido em duas bandas: 0-4000 Hz e 4000-8000 Hz no mó- dulo 402. No exemplo da Figura 4, a divisão de banda é realizada utilizando um banco de filtros QMF (Filtro de Espelho de Quadratura) com 64 coeficien- tes. Esta operação é bem-conhecida daqueles versados na técnica.Após a divisão de banda, dois sinais são obtidos, um cobrindo a banda de 0-4000 Hz (banda baixa) e o outro cobrindo a banda de 4000-8000 Hz (banda alta). Os sinais em cada uma destas duas bandas tem a resolução diminuída por um fator de 2 no módulo 402. Isto gera 2 sinais a uma freqüência de amos- tragem de 8 kHz: xlf para a banda baixa (403), e XHF para a banda alta (404).
O sinal de banda baixa Xlf é alimentado para uma versão modi- ficada do codificador de G.729 405. Esta versão modificada 405 primeira- mente produz o fluxo de bits de G.729 padrão a 8 kbps, o que constitui os bits para a Camada 1. Note que o codificador opera sobre quadros de 20 ms, portanto os bits da Camada 1 correspondem a dois quadros de G.729.
Então, o codificador de G.729 é modificado para incluir um se- gundo livro se códigos algébrico inovador para melhorar o sinal de banda baixa. Este segundo livre de códigos é idêntico ao livro de códigos inovador em G.729, e requer 17 bits por subquadro de 5 ms para codificar os pulsos de livro de códigos (68 bits por quadro de 20 ms). Os ganhos do segundo livro de códigos algébrico são quantizados em relação ao ganho do primeiro livro de códigos utilizando 3 bits no primeiro e no terceiro subquadros e 2 bits no segundo e no quarto subquadros (10 bits por quadro). Dois bits são utili- zados para enviar as informações de classificação para aperfeiçoar a oculta- ção no decodificador. Isto produz 68+10+2 = 80 bits para a Camada 2. O sinal-alvo utilizado para este livro de códigos inovador de segundo estágio é obtido pela subtração da contribuição do livro de códigos inovador de G.729 no domínio de voz ponderado.
O sinal de síntese XLF do codificador de G.729 405 é obtido pe- la adição da excitação do G.729 padrão (a adição de vetores de código es- calados inovadores e adaptáveis) e a excitação inovadora do livro de códi- gos inovador adicional, e passando esta excitação melhorada através do filtro de síntese de G.729 usual. Este é o sinal de síntese que o decodifica- dor produzirá se este receber somente a Camada 1 e a Camada 2 do fluxo de bits. Note que o conteúdo de livro de códigos adaptável (ou de passo) é atualizado somente utilizando a excitação de G.729.
A Camada 3 estende a largura de banda de qualidade de banda estreita para banda larga. Isto é feito pela aplicação de codificação paramé- trica (módulo 407) para o componente de alta freqüência Xhf- Somente o envelope espectral e o envelope de domínio de tempo de Xhf são computa- dos e transmitidos para esta camada. A extensão de largura de banda re- quer 33 bits. Os 7 bits restantes nesta camada são utilizados para transmitir as informações de fase (posição de pulso glótico) para aperfeiçoar a oculta- ção de apagamento de quadro no decodificador de acordo com a presente invenção. Isto será explicado em mais detalhes na descrição seguinte.
Então, da Figura 4, o erro de codificação do somador 406 (XLF - XLF) juntamente com o sinal de alta freqüência Xhf estão ambos mapeados para o domínio de freqüência no módulo 408. A MDCT, com 50% de sobre- posição, é utilizada para este mapeamento de freqüência de tempo. Isto po- de ser executado utilizando duas MDCTs, uma para cada banda. O sinal de banda alta pode ser primeiro espectralmente dobrado antes da MDCT pelo operador (-1)n de modo que os coeficientes de MDCT de ambas as trans- formadas podem ser unidos em um vetor para propósitos de quantização. Os coeficientes de MDCT são então quantizados no módulo 409 utilizando uma quantização de vetor algébrica escalável em um modo similar à quanti- zação dos coeficientes de FFT (Transformada de Fourier Rápida) no codifi- cador de áudio 3GPP AMR-WB+ (3GPP TS 26.290). É claro, outras formas de quantização podem ser aplicadas. A taxa de bit total para esta quantiza- ção espectral é de 18 kbps, o que leva a uma provisão de bits de 360 bits por quadro de 20 ms. Após a quantização, os bits correspondentes são dis- postos em camadas em etapas de 2 kbps no módulo 410 para formar as Camadas 4 até 12. Cada camada de 2 kbps assim contém 40 bits por qua- dro de 20 ms. Em uma modalidade ilustrativa, 5 bits podem ser reservados na Camada 4 para transmitir as informações de energia para aperfeiçoar a ocultação de decodificador e a convergência em caso de apagamentos de quadros.
As extensões algorítmicas comparadas com o codificador de G.729 de núcleo, podem ser resumidas como segue: 1) o livro de códigos inovador de G.729 é repetido uma segunda vez (Camada 2); 2) uma codifi- cação paramétrica é aplicada para estender a largura de banda, onde so- mente o envelope espectral e o envelope de domínio de tempo (informações de ganho) são computados e quantizados (Camada 3); 3) uma MDCT é computada a cada 20 ms, e os seus coeficientes espectrais são quantizados em blocos 8-dimensionais utilizando uma VQ (Quantização de Vetor) algé- brica escalável; e 4) uma rotina de disposição em camadas de bits é aplica- da para formatar o fluxo de 18 kbps da VQ algébrica em camadas de 2 kbps cada (Camadas 4 até 12). Em uma modalidade, 14 bits de informações de ocultação e de convergência podem ser transmitidos na Camada 2 (2 bits), Camada 3 (7 bits) e Camada 4 (5 bits).
A Figura 5 é um diagrama de blocos de um exemplo de decodifi- cador incorporado 500. Em cada quadro de 20 ms, o decodificador 500 pode receber qualquer uma das taxas de bit suportadas, de 8 kbps até 32 kbps. Isto significa que a operação do decodificador é condicional ao número de bits ou de camadas, recebidos em cada quadro. Na Figura 5, é assumido que pelo menos as Camadas 1, 2, 3 e 4 foram recebidas no decodificador. Estes casos das taxas de bit mais baixas serão abaixo descritos.
No decodificador da Figura 5, o fluxo de bits 501 recebido é pri- meiramente separado em Camadas de bits como produzidas pelo codifica- dor (módulo 502). As Camadas 1 e 2 formam a entrada para o decodificador de G.729 modificado 503, o qual produz um sinal de síntese Xlf para a banda mais baixa (0-4000 Hz, amostrada a 8 kHz). Lembre-se que a Cama- da 2 essencialmente contém os bits para um segundo livro de códigos ino- vador com a mesma estrutura que o livro de códigos inovador de G.729.
Então, os bits da Camada 3 formam a entrada para o decodifi- cador paramétrico 506. Os bits da Camada 3 fornecem uma descrição pa- ramétrica da banda alta (4000-8000 Hz, amostrada a 8 kHz). Especificamen- te, os bits da Camada 3 descrevem o envelope espectral de banda alta do quadro de 20 ms, juntamente com o envelope de domínio de tempo (ou in- formações de ganho). O resultado da decodificação paramétrica é uma a- proximação paramétrica do sinal de banda alta, denominado XHF na Figura 5.
Então, os bits da Camada 4 e acima formam a entrada do quan- tizador inverso 504 (Q"1). A saída do quantizador inverso 504 é um conjunto de coeficientes espectrais quantizados. Estes coeficientes quantizados for- mam a entrada do módulo de transformada inversa 505 (T"1), especificamen- te uma MDCT inversa com 50% de sobreposição. A saída da MDCT inversa é o sinal XD . Este sinal XD pode ser visto como o erro de codificação quan- tizado do codificador de G.729 modificado na banda baixa, juntamente com a banda alta quantizada se quaisquer bits forem alocados para a banda alta no dado quadro. O módulo de transformada inversa 505 (T"1) é implementa- do como duas MDCTs inversas então Xnl consistirá em dois componentes, Xdi que representa o componente de baixa freqüência e XD2 que represen- ta o componente de alta freqüência.
O componente XD1 que forma o erro de codificação quantizado do codificador de G.729 modificado é então combinado com XLF no combi- nador 507 para formar a síntese de banda baixa XLF. No mesmo modo, o componente XD2 que forma a banda alta quantizada é combinado com a aproximação paramétrica da banda alta Xhf no combinador 508 para formar a síntese de banda alta XHF . Os sinais XLF e SHF são processados através do banco de filtros de QMF de síntese 509 para formar o sinal de síntese total S na taxa de amostragem de 16 kHz.
No caso onde as Camadas 4 e acima não são recebidas, então □xd é zero, e as saídas dos combinadores 507 e 508 são iguais às suas en- tradas, a saber Xlf e Xhf . Se somente duas Camadas 1 e 2 forem recebi- das, então o decodificador precisa somente aplicar o decodificador de G.729 modificado para produzir o sinal Xlf . O componente de banda alta será ze- ro, e o sinal de resolução aumentada a 16 kHz (se requerido) terá conteúdo somente na banda baixa. Se somente a Camada 1 for recebida, então o de- codificador precisa somente aplicar o decodificador de G.729 para produzir o sinal XLF.
OCULTAÇÃO DE APAGAMENTO DE QUADRO ROBUSTO
O apagamento de quadros tem um efeito importante sobre a qualidade de voz sintetizada nos sistemas de comunicação de voz digitais, especialmente quando operando nos ambientes sem fio e nas redes comu- tadas em pacote. Nos sistemas celulares sem fio, a energia a energia do sinal recebido pode exibir freqüentes desvanecimentos severos que resultam em altas taxas de erro de bit e isto torna-se mais evidente nos limites de cé- lula. Neste caso, o decodificador de canal não consegue corrigir os erros no quadro recebido e como uma conseqüência, o detector de erros usualmente utilizado após o decodificador de canal declarará o quadro como apagado. Nas aplicações de rede de voz sobre pacote, tal como Voz Sobre Protocolo de Internet (VolP), o sinal de voz é empacotado onde usualmente um quadro de 20 ms é colocado em cada pacote. Nas comunicações comutadas em pacote, uma queda de pacote pode ocorrer em um roteador se o número de pacotes tornar-se muito grande, ou o pacote pode chegar no receptor após um longo retardo e este deve ser declarado como perdido se o seu retardo for maior do que o comprimento de um armazenamento de tremulação no lado do receptor. Nestes sistemas, o codec poderia ser sujeito tipicamente a taxas de apagamento de quadro de 3 a 5%.
O problema de processamento de apagamento de quadro (FER) é basicamente duplo. Primeiro, quando um indicador de quadro apagado chega, o quadro faltante deve ser gerado pela utilização das informações enviadas no quadro anterior e pela estimativa de evolução de sinal no qua- dro faltante. O sucesso da estimativa depende não somente da estratégia de ocultação, mas também do local no sinal de voz onde o apagamento aconte- ce. Segundamente, uma transição suave deve ser assegurada quando a operação normal recupera, isto é quando o primeiro quadro bom chega após um bloco de quadros apagados (um ou mais). Esta não é uma tarefa trivial já que a síntese verdadeira e a síntese estimada podem evoluir diferentemen- te. Quando o primeiro quadro bom chega, o decodificador está com isto des- sincronizado do codificador. A razão principal é que os codificadores de bai- xa taxa de bits baseiam-se na predição de passo, e durante os quadros apa- gados, a memória de preditor de passo (ou do livro de códigos adaptável) não é mais a mesma que aquela no codificador. O problema é amplificado quando muitos quadros consecutivos são apagados. Quanto à ocultação, a dificuldade da recuperação de processamento normal depende do tipo de sinal, por exemplo o sinal de voz onde o apagamento ocorreu.
O efeito negativo de apagamentos de quadros pode ser signifi- cativamente reduzido adaptando a ocultação e a recuperação de processa- mento normal (recuperação adicional) ao tipo do sinal de voz onde o apa- gamento ocorre. Para este propósito, é necessário classificar cada quadro de voz. Esta classificação pode ser feita no codificador e transmitida. Alter- nativamente, pode ser estimada no decodificador.
Para melhor ocultação e recuperação, existem poucas caracte- rísticas críticas do sinal de voz que devem ser cuidadosamente controladas. Estas características críticas são a energia ou a amplitude de sinal, a quanti- dade de periodicidade, o envelope espectral e o período de passo. No caso de uma recuperação de voz falada, um aperfeiçoamento adicional pode ser conseguido por um controle de fase. Com um ligeiro aumento na taxa de bits, poucos parâmetros suplementares podem ser quantizados e transmiti- dos para um melhor controle. Se nenhuma largura de banda adicional for disponível, os parâmetros podem ser estimados no decodificador. Com estes parâmetros controlados, a ocultação e a recuperação de apagamento de quadro podem ser significativamente aperfeiçoadas, especialmente aperfei- çoando a convergência do sinal decodificado para o sinal real no codificador e aliviando o efeito de descasamento entre o codificador e o decodificador quando o processamento normal recupera.
Estas idéias forma discutidas no pedido de patente PCT na Re- ferência [1]. De acordo com a modalidade ilustrativa não-restritiva da presen- te invenção, a ocultação e a convergência são adicionalmente melhoradas por uma melhor sincronização do pulso glótico no livro de códigos de passo (ou livro de códigos adaptável) como será aqui abaixo descrito. Isto pode ser executado com ou sem as informações de fase recebidas, que correspon- dem por exemplo à posição do pulso de passo ou do pulso glótico.
Na modalidade ilustrativa da presente invenção, métodos para uma eficiente ocultação de apagamento de quadro, e métodos para aperfei- çoar a convergência no decodificador nos quadros que seguem um quadro apagado estão descritos.
As técnicas de ocultação de apagamento de quadro de acordo com a modalidade ilustrativa foram aplicadas no codec incorporado baseado em G.729 acima descrito. Este codec servirá como um exemplo de estrutura para a implementação dos métodos de ocultação de FER na descrição se- guinte.
A Figura 6 fornece um diagrama de blocos simplificado das Ca- madas 1 e 2 de um codificador incorporado 600, com base no modelo de codificador de CELP da Figura 2. Neste diagrama de blocos simplificado, o módulo de pesquisa de passo de Ioop fechado 207, o calculador de resposta de entrada zero 208, ó calculador de resposta de impulso 209, o módulo de pesquisa de excitação inovador 210, e o módulo de atualização de memória 211 estão agrupados nos módulos de pesquisa de passo de Ioop fechado e de livro de códigos inovador 602. Ainda, a pesquisa de livro de códigos de segundo estágio na Camada 2 está também incluída nos módulos 602. Este grupamento é feito para simplificar a introdução dos módulos relativos à mo- dalidade ilustrativa da presente invenção.
A Figura 7 é uma extensão do diagrama de blocos da Figura 6 onde os módulos relativos à modalidade ilustrativa não-restritiva da presente invenção foram adicionados. Nestes módulos 702 a 707 adicionados, parâ- metros adicionais são computados, quantizados, e transmitidos com o obje- tivo de aperfeiçoar a ocultação de FER e a convergência e a recuperação do decodificador após os quadros apagados. Nesta modalidade ilustrativa, es- tes parâmetros de ocultação/recuperação incluem a classificação de sinal, a energia, e as informações de fase (por exemplo a posição estimada do últi- mo pulso glótico no(s) quadro(s) anterior(es)).
Na descrição seguinte, uma computação e quantização destes parâmetros de ocultação/recuperação adicionais serão fornecidas em deta- lhes e ficarão mais aparentes com referência à Figura 7. Entre estes parâ- metros, a classificação de sinal será tratada em mais detalhes. Nas seções subsequentes, uma ocultação de FER eficiente que utiliza estes parâmetros de ocultação/recuperação adicionais para aperfeiçoar a convergência será explicada.
CLASSIFICAÇÃO DE SINAL PARA OCULTAÇÃO E RECUPERAÇÃO DE FER
A idéia básica atrás da utilização de uma classificação da voz para uma reconstrução de sinal na presença de quadros apagados consiste no fato de que a estratégia de ocultação ideal é diferente para os segmentos de voz quase estacionários e para os segmentos de voz com características rapidamente mutáveis. Enquanto o melhor processamento de quadros apa- gados nos segmentos de voz não estacionários pode ser resumido como uma rápida convergência de parâmetros de codificação de voz para as ca- racterísticas de ruído ambiente no caso, do sinal quase estacionário, os pa- râmetros de codificação de voz não variam dramaticamente e podem ser mantidos praticamente imutáveis durante diversos quadros apagados adja- centes antes de serem amortecidos. Também, o método ótimo para uma recuperação de sinal após um bloco de quadros apagado varia com a classi- ficação do sinal de voz.
O sinal de voz pode ser aproximadamente classificado como falado, não-falado e pausas.
A voz falada contém uma quantidade de componentes periódi- cos e pode ser adicionalmente dividida nas seguintes categorias: inícios fa- lados, segmentos falados, transições faladas e finais falados. Um início fala- do é definido como um início de um segmento de voz falado após uma pau- sa ou um segmento não-falado. Durante os segmentos falados, os parâme- tros de sinal de voz (envelope espectral, período de passo, razão de compo- nentes periódicos e não periódicos, energia) variam lentamente de quadro para quadro. Uma transição falada é caracterizada por rápidas variações de uma voz falada, tal como uma transição entre vogais. Os finais falados são caracterizados por uma diminuição gradual de energia e de fala no final dos segmentos falados.
As partes não-faladas do sinal são caracterizadas pela falta do componente periódico podem ser adicionalmente divididas em quadros ins- táveis, onde a energia e o espectro mudam rapidamente, e quadros estáveis onde estas características permanecem relativamente estáveis.
Os quadros restantes são classificados como silêncio. Os qua- dros de silêncio compreendem todos os quadros sem voz ativa, isto é, tam- bém os quadros somente de ruído se um ruído de fundo estiver presente.
Nem todas as classes acima mencionadas precisam de um pro- cessamento separado. Com isto, para os propósitos de técnicas de oculta- ção de erro, algumas das classes de sinal são agrupadas juntas.
CLASSIFICAÇÃO NO CODIFICADOR
Quando existe uma largura de banda disponível no fluxo de bits para incluir as informações de classificação, a classificação pode ser feita no codificador. Isto tem diversas vantagens. Uma é que existe freqüentemente um lookahead nos codificadores de voz. O lookahead permite estimar a evo- lução do sinal no quadro seguinte e conseqüentemente a classificação pode ser feita em levando em conta o comportamento de sinal futuro. Geralmente, quando mais longo é o lookahead, melhor pode ser a classificação. Umia vantagem adicional é uma redução de complexidade, já que a maior parte do processamento de sinal necessário para a ocultação de apagamento de quadro é necessário de qualquer modo para a codificação de voz. Finalmen- te, existe também a vantagem de trabalhar com o sinal original ao invés do sinal sintetizado.
A classificação de quadro é feita com a consideração da estraté- gia de ocultação e recuperação em mente. Em outras palavras, qualquer quadro é classificado de tal modo que a ocultação por ser ótima se o quadro seguinte estiver faltando, o que a recuperação pode ser ótima se o quadro anterior foi perdido. Algumas das classes utilizadas para o processamento de FER não precisam ser transmitidas, já que estas podem ser deduzidas sem ambigüidade no decodificador. Na modalidade ilustrativa presente, cin- co (5) classes distintas são utilizadas, e definidas como segue:
- A classe NÃO-FALADA compreende todos os quadros de voz não-falada e todos os quadros sem uma voz ativa. Um quadro final falado pode também ser classificado com NÃO-FALADO se o seu final tender a ser não-falado e a ocultação designada para os quadros não-falados pode ser utilizada para o quadro seguinte no caso deste ser perdido.
- A classe de TRANSIÇÃO NÃO-FALADA compreende os qua- dros não-falados com um possível início falado no final. O início é no entanto ainda muito curto ou não bem-construído o suficiente para utilizar a oculta- ção designada para os quadros falados. A classe de TRANSIÇÃO NÃO- FALADA pode seguir somente um quadro classificado como NÃO-FALADO ou TRANSIÇÃO NÃO-FALADA.
- A classe de TRANSIÇÃO FALADA compreende os quadros falados com fracas características faladas. Estes são tipicamente quadros falados com características rapidamente mutáveis (isto é, transições entre vogais) ou finais falados que duram o quadro inteiro. A classe de TRANSI- ÇÃO FALADA pode seguir somente um quadro classificado como TRANSI- ÇÃO FALADA, FALADO ou INÍCIO.
- A classe FALADA compreende os quadros falados com carac- terísticas estáveis. Esta classe pode seguir somente um quadro classificado como TRANSIÇÃO FALADA, FALADO ou INÍCIO.
- A classe de INÍCIO compreende todos os quadros falados com características estáveis que seguem um quadro classificado como NÃO- FALADO ou TRANSIÇÃO NÃO-FALADA. Os quadros classificados como INÍCIO correspondem a quadros de início falados onde o início já está sufici- entemente bem-construído para a utilização da ocultação designada para os quadros falados perdidos. As técnicas de ocultação utilizadas para um apa- gamento de quadro após a classe de INÍCIO são as mesmas que seguem a classe FALADA. A diferença está na estratégia de recuperação. Se um qua- dro de classe de INÍCIO for perdido (isto é, um quadro bem-falado chega após um apagamento, mas o último quadro bom antes do apagamento era NÃO-FALADO), uma técnica especial pode ser utilizada para reconstruir arti- ficialmente o início perdido. Este cenário pode ser visto na Figura 6. As téc- nicas de reconstrução de início artificial serão descritas em mais detalhes na descrição seguinte. Por outro lado, se um quadro bom de INÍCIO chegar a- pós um apagamento e o último quadro bom antes do apagamento era NÃO- FALADO, este processamento especial não é necessário, já que o início não foi perdido (não estava no quadro perdido).
O diagrama de estado de classificação está delineado na Figura 8. Se a largura de banda disponível for suficiente, a classificação é feita no codificador e transmitida utilizando 2 bits. Como pode ser visto da Figura 8, a TRANSIÇÃO NÃO-FALADA 804 e a TRANSIÇÃO FALADA 806 podem ser agrupadas juntas já que estas podem ser não ambiguamente diferenciadas no decodificador (os quadros de TRANSIÇÃO NÃO-FALADA 804 podem seguir somente os quadros NÃO-FALADOS 802 ou TRANSIÇÃO NÃO- FALADA 804, os quadros de TRANSIÇÃO FALADA 806 podem seguir so- mente os quadros de INÍCIO 810, FALADO 808 ou TRANSIÇÃO FALADA 806). Nesta modalidade ilustrativa, a classificação é executada no codifica- dor e quantizada utilizando 2 bits os quais são transmitidos na Camada 2. Assim, se pelo menos a Camada 2 for recebida então as informações de classificação de decodificador são utilizadas para uma ocultação aperfeiçoa- da. Se somente a Camada 1 de núcleo for recebida, então a classificação é executada no decodificador.
Os seguintes parâmetros são utilizados para a classificação no codificador: uma correlação normalizada rx, uma medição de inclinação es- pectral et, uma razão de sinal para ruído snr, um contador de estabilidade de passo pc, uma energia de quadro relativa do sinal no final do quadro corren- te Es, e um contador de cruzamento zero zc. A computação destes parâmetros os quais são utilizados para classificar o sinal está abaixo explicada.
A correlação normalizada rx é computada como parte do módulo de pesquisa de passo de Ioop aberto 206 da Figura 7. Este módulo 206 usu- almente emite a estimativa de passo de Ioop aberto a cada 10 ms (duas ve- zes por quadro). Aqui, esta é também utilizada para emitir as medições de correlação normalizada. Estas correlações normalizadas são computadas no sinal de voz ponderado corrente sw(n) e no sinal de voz ponderado passado no retardo de passo de Ioop aberto. A correlação média rx é definida como:
<formula>formula see original document page 30</formula>
onde rx(0), rx(1) são respectivamente a correlação normalizada do primeiro meio quadro e do segundo meio quadro. A correlação normalizada rx(k) é computada como segue:
<formula>formula see original document page 30</formula>
As correlações rx(k) são computadas utilizando o sinal de voz ponderado corrente sw(n) (como "x"). Os instantes tk são relativos ao início de meio quadro corrente e são iguais a O e 80 amostras respectivamente. O valor Tk é o intervalo de passo no meio quadro que maximiza a relação cru- zada
<formula>formula see original document page 30</formula>
O comprimento da computação de autocorrelação L1 é igual a 80 amostras. Em outra modalidade, para determinar o valor de Tk em um meio quadro, a correlação cruzada
<formula>formula see original document page 30</formula>
é computada e os valores de τ que corresponde à máxima nas três seções de retardo 20-39, 40-79, 80-143 são encontrados. Então Tk é ajustado para o valor de τ que maximiza a correlação normalizada na Equação (2). O parâmetro de inclinação espectral et contém as informações sobre a distribuição de freqüência de energia. Na modalidade ilustrativa pre- sente, a inclinação espectral é estimada no módulo 703 como os primeiros coeficientes de autocorrelação normalizados do sinal de voz (o primeiro coe- ficiente de reflexão obtido durante a análise de LP).
Como a análise de LP é executada duas vezes por quadro (uma vez a cada quadro de G.729 de 10 ms), a inclinação espectral é computada como a média do primeiro coeficiente de reflexão de ambas as análises de LP. Isto é
<formula>formula see original document page 31</formula>
onde k1(j) é o primeiro coeficiente de reflexão da análise de LP no meio qua- dro j.
A medição de razão de sinal para ruído (SNR) snr explora o fato de que para um codificador de casamento de forma de onda geral, a SNR é muito mais alta para os sons falados. A estimativa de parâmetro de snr deve ser feita no final do loop de subquadro de codificador e é computada para o quadro todo no módulo de computação SNR 704 utilizando a relação:
<formula>formula see original document page 31</formula>
onde Esw é a energia do sinal de voz s(n) do quadro corrente e Ee é a ener- gia do erro entre o sinal de voz e o sinal de síntese do quadro corrente.
O contador de estabilidade de passo pc acessa a variação do período de passo. Este é computado dentro do módulo de classificação de sinal 705 em resposta às estimativas de passo de Ioop aberto como segue:
<formula>formula see original document page 31</formula>
Os valores pi, P2 e P3 correspondem ao intervalo de passo de loop fechado dos últimos 3 subquadros.
A energia de quadro relativa Es é computada pelo módulo 705 como uma diferença entre a energia de quadro atual em dB e a sua média de longo prazo:
<formula>formula see original document page 31</formula> onde a energia de quadro Ef como a energia do sinal de entrada em janela em dB:
<formula>formula see original document page 32</formula>
onde L=160 é o comprimento de quadro e whanning(i) é uma janela de Han- ning de comprimento L. A energia de média a longo prazo é atualizada sobre os quadros de voz ativa utilizando a seguinte relação:
<formula>formula see original document page 32</formula>
O último parâmetro é o parâmetro de cruzamento zero zc com- putado em um quadro do sinal de voz pelo módulo de computação de cru- zamento zero 702. Nesta modalidade ilustrativa, o contador de cruzamento zero zc conta o número de vezes que o sinal do sinal muda de positivo para negativo durante aquele intervalo.
Para tornar a classificação mais robusta, os parâmetros de clas- sificação são considerados no módulo de classificação de sinal 705 juntos formando uma função de mérito fm. Para este propósito, os parâmetros de classificação são primeiramente escalados entre 0 e 1 de modo que cada valor de parâmetro típico para um sinal não-falado traduz em 0 e cada valor de parâmetro típico para um sinal falado traduz em 1. Uma função linear é utilizada entre estes. Consideremos um parâmetro px, a sua versão escala-, da é obtida utilizando:
<formula>formula see original document page 32</formula>
e cortado entre 0 e 1 (exceto para a energia relativa a qual é cortada entre 0,5 e 1). Os coeficientes de função kp e cp foram encontrados experimental- mente para cada um dos parâmetros de modo que a distorção de sinal devi- do às técnicas de ocultação e recuperação utilizadas na presença de FERs é mínima. Os valores utilizados nesta implementação ilustrativas estão resu- midos na Tabela 2:
Tabela 2
Parâmetros de Classificação de Sinal e os coeficientes de suas respectivas funções de escalagem <table>table see original document page 33</column></row><table>
A função de mérito foi definida como:
<formula>formula see original document page 33</formula>
onde o sobrescrito s indica a versão escalada dos parâmetros.
A função de mérito é então escalada por 1,05 se a energia rela- tiva escalada Ess é igual 0,5 e escalada por 1,25 se Ess for maior do que 0,75. Ainda, a função de mérito é também escalada por um fator fE derivado com base em uma máquina de estado a qual verifica a diferença entre a va- riação de energia relativa instantânea e a variação de energia relativa a lon- go prazo. Isto é adicionado para aperfeiçoar a classificação de sinal na pre- sença de ruído de fundo.
Um parâmetro de variação de energia relativa Evar é atualizado como:
Evar = 0,05(ES - Eprev) + 0,95Evar ^ - onde Eprev é o valor de Es do quadro anterior. Se (|ES - Eprev|< (|Evarl +6)) E (class0,d = NÃO-FALADA) fE = 0,8 Ou então
Se ((Es - Eprevl> (Evar +3) ) E (class0id = NÃO-FALADA ou TRANSIÇÃO) fE = 1,1
Ou então
Se ((Es - Eprev) < (Evar -5)) E (class0id = FALADA ou INÍCIO) fE = 0,6. onde class0id é a classe do quadro anterior.
A classificação é então feita utilizando a função de mérito fm e seguindo as regras resumidas na Tabela 3:
Tabela 3
Regras de Classificação de Sinal no Codificador <table>table see original document page 34</column></row><table>
No caso de detecção de atividade de voz (VAD) estar presente no codificador, o sinalizador de VAD pode ser utilizado para a classificação já que este indica diretamente que nenhuma classificação adicional é neces- sária se o seu valor indicar uma voz inativa (isto é, o quadro é diretamente classificado como NÃO-FALADO). Nesta modalidade ilustrativa, o quadro é diretamente classificado como NÃO-FALADO se a energia relativa for menor do que 10 dB.
CLASSIFICAÇÃO NO DECODIFICADOR
Se a aplicação não permitir a transmissão das informações de classe (nenhum bit extra pode ser transportado), a classificação pode ainda ser executada no decodificador. Nesta modalidade ilustrativa, os bits de classificação são transmitidos na Camada 2, portanto a classificação é so- mente executada no decodificador para o caso onde somente a Camada 1 de núcleo é recebida.
Os seguintes parâmetros são utilizados para a classificação no decodificador: uma correlação normalizada rx, uma medição de inclinação espectral et, um contador de estabilidade de passo pc, uma energia de qua- dro relativa do sinal no final do quadro corrente Es, e um contador de cruza- mento zero zc.
A computação destes parâmetros os quais são utilizados para classificar o sinal está abaixo explicada. A correlação normalizada rxé computada no final do quadro com base no sinal de síntese. O intervalo de passo do último subquadro é utilizado.
A correlação normalizada rx é computada sincronizadamente em passo como segue:
<formula>formula see original document page 35</formula>
onde T é o intervalo de passo do último subquadro e t = L-T, e L é o tama- nho de quadro. Se o intervalo de passo do último subquadro for maior do que 3N/2 (N é o tamanho de subquadro), T é ajustado para o intervalo de passo médio dos últimos dois subquadros.
A correlação rx é computada utilizando o sinal de voz de síntese Sout(n). Para os intervalos de passo menores do que o tamanho de subqua- dro (40 amostras) a correlação normalizada é computada duas vezes nos instantes t = L-T, e t = L-2T, e rx é dado como a média das duas computações.
O parâmetro de inclinação espectral et contém as informações sobre a distribuição de freqüência de energia. Na modalidade ilustrativa pre- sente, a inclinação espectral no decodificador é estimada como o primeiro coeficiente de autocorrelação normalizado do sinal de síntese. Este é com- putado com base nos últimos 3 subquadros como:
<formula>formula see original document page 35</formula>
onde x(n) = sout(n) é o sinal de síntese, N é o tamanho de subquadro, e L é o tamanho de quadro (N=40 e L=160 nesta modalidade ilustrativa).
O contador de estabilidade de passo acessa a variação do perí- odo de passo. Este é computado no decodificador com base no que segue: pc = |p3 +p2 -P1 (13)
Os valores p0, pi, P2 e p3 correspondem a intervalo de passo de loop fechado dos 4 subquadros.
A energia de quadro relativa Es é computada como uma diferen- ça entre a energia de quadro corrente em dB e a sua energia média de longo prazo:
<formula>formula see original document page 36</formula>
onde a energia de quadro Ef é a energia do sinal de síntese em dB compu- tada no passo sincronizadamente no final do quadro como:
<formula>formula see original document page 36</formula>
onde L=160 é o comprimento de quadro T é o intervalo de passo médio dos últimos dois subquadros. Se T for menor do que o tamanho de subquadro então T é ajustado para 2T (a energia computada utilizando dois períodos de passo para os intervalos de passo curtos).
A energia em média de longo prazo é atualizada nos quadros de voz ativa utilizando a seguinte relação:
<formula>formula see original document page 36</formula>
O último parâmetro é o parâmetro de cruzamento zero zc com- putado sobre um quadro do sinal de síntese. Nesta modalidade ilustrativa, o contador de cruzamento zero zc conta o número de vezes que o sinal do sinal muda de positivo para negativo durante aquele intervalo.
Para tornar a classificação mais robusta, os parâmetros de clas- sificação são considerados juntos formando uma função de mérito fm. Para este propósito, os parâmetros de classificação são primeiramente escalados uma função linear. Consideremos um parâmetro px, a sua versão escalada é obtida utilizando:
<formula>formula see original document page 36</formula>
O parâmetro de coerência de passo escalado é cortado entre 0 e 1, o parâmetro de correlação normalizado escalado é o dobro se este for positivo. Os coeficientes de função kp e cp foram encontrados experimental- mente para cada um dos parâmetros de modo que a distorção de sinal devi- do às técnicas de ocultação e recuperação utilizadas na presença de FERs é mínima. Os valores utilizados nesta implementação ilustrativa estão resumi- dos na Tabela 4:
Tabela 4
Parâmetros de Classificação de Sinal no decodificador e os coeficientes de suas respectivas funções de escalagem
<table>table see original document page 37</column></row><table>
A função da função de mérito foi definida como:
<formula>formula see original document page 37</formula>
onde o sobrescrito s indica a versão escalada dos parâmetros.
A classificação é então feita utilizando a função de mérito fm e seguindo as regras resumidas na Tabela 5:
Tabela 5
Regras de Classificação de Sinal no Decodificador
<table>table see original document page 37</column></row><table>
PARÂMETROS DE VOZ PARA PROCESSAMENTO DE FER Existem poucos parâmetros que são cuidadosamente controla- dos para evitar os artefatos perturbadores quando os FERs ocorrem. Se poucos bits extras puderem ser transmitidos, então estes parâmetros podem ser estimados no codificador, quantizados, e transmitidos. De outro modo, alguns destes podem estimados no decodificador. Estes parâmetros poderi- am incluir a classificação de sinal, as informações de energia, as informa- ções de fase, e as informações de fala.
A importância do controle de energia manifesta-se principalmen- te quando uma operação normal recupera após um bloco de quadros apa- gados. Como a maioria dos codificadores de voz faz uso de uma predição, a energia correta não pode ser apropriadamente estimada no decodificador. Nos segmentos de voz falada, a energia incorreta pode persistir por diversos quadros consecutivos o que é muito perturbador especialmente quando esta energia incorreta aumenta.
A energia não é somente controlada para a voz falada devido à predição de longo prazo (predição de passo), esta é também controlada para a voz não-falada. A razão aqui é a predição do quantizador de ganho da ino- vação freqüentemente utilizado nos codificadores do tipo CELP. A energia errada durante os segmentos não-falados pode causar uma flutuação de alta freqüência perturbadora.
O controle de fase é também uma parte a considerar. Por exem- plo, as informações de fase são enviadas relativas à posição de pulso glóti- co. No pedido de patente PCT em [1], as informações de fase são transmiti- das como a posição do primeiro pulso glótico no quadro, e utilizadas para reconstruir os inícios falados perdidos. Uma utilização adicional de informa- ções de fase é para ressincronizar o conteúdo do livro de códigos adaptável. Isto aperfeiçoa a convergência de decodificador no quadro ocultado e nos quadros seguintes e aperfeiçoa significativamente a qualidade de voz. O procedimento para a ressincronização do livro de códigos adaptável (ou ex- citação passada) pode ser feito em diversos modos, dependendo das infor- mações de fase recebidas (recebidas ou não) e do retardo disponível no de- codificador. INFORMACOES DE ENERGIA
As informações de energia podem ser estimadas e enviadas ou no domínio residual de LP ou no domínio de sinal de voz. Enviar as informa- ções no domínio residual tem a desvantagem de não levar em conta a influ- ência do filtro de síntese de LP. Isto pode ser especificamente perigoso no caso de recuperação falada após diversos quadros falados perdidos (quando o FER acontece durante um segmento de voz falado). Quando um FER che- ga após um quadro falado, a excitação do último quadro bom é tipicamente utilizada durante a ocultação com alguma estratégia de atenuação. Quando um novo filtro de síntese de LP chega com o primeiro quadro bom após o apagamento, pode existir um descasamento entre a energia de excitação e o ganho do filtro de síntese de LP. O novo filtro de síntese pode produzir um sinal de síntese cuja energia é altamente diferente da energia do último qua- dro apagado sintetizado e também da energia de sinal original. Por esta ra- zão, a energia é computada e quantizada no domínio de sinal.
A energia Eq é computada e quantizada no módulo de estimativa e quantização de energia 706 da Figura 7. Nesta modalidade ilustrativa não- restritiva, um quantizador uniforme de 5 bits é utilizado na faixa de 0 dB a 96 dB com um passo de 3,1 dB. O índice de quantização é dado pela parte in- teirade:
<formula>formula see original document page 39</formula>
onde o índice está limitado a 0 < i < 31.
E é a energia de amostra máxima para os quadros classificados como FALADOS ou INÍCIO, ou a energia média por amostra para outros quadros. Para os quadros FALADOS ou de INÍCIO, a energia de amostra máxima é computada sincronizadamente em passo no final do quadro como segue:
<formula>formula see original document page 39</formula>
onde L é o comprimento de quadro e o sinal s(i) significa sinal de voz. Se o retardo de passo for maior do que o tamanho de subquadro (40 amostras nesta modalidade ilustrativa), tE é igual ao intervalo de passo de Ioop fecha- do arredondado do último subquadro. Se o retardo de passo for mais curto do que 40 amostras, então íe é ajustado para o dobro do intervalo de passo de Ioop fechado arredondado do último subquadro.
Para outras classes, E é a energia média por amostra da segun- da metade do quadro corrente, isto é, íe é ajustado para L/2 e E é computa- do como:
<formula>formula see original document page 40</formula>
Nesta modalidade ilustrativa o sinal de síntese local no codifica- dor é utilizado para computar as informações de energia.
Nesta modalidade ilustrativa, as informações de energia são transmitidas na Camada 4. Assim se a Camada 4 for recebida, estas infor- mações podem ser utilizadas para aperfeiçoar a ocultação de apagamento de quadro. De outro modo a energia é estimada no lado do decodificador.
INFORMAÇÕES DE CONTROLE DE FASE
O controle de fase é utilizado enquanto recuperando após um segmento perdido de voz falada por razões similares como descrito na se- ção anterior. Após um bloco de quadros apagados, as memórias de decodi- ficador tornam-se dessincronizadas com as memórias de codificador. Para ressincronizar „o decodificador, algumas informações de fase podem ser transmitidas. Como um exemplo não limitativo, a posição e o sinal do último pulso glótico no quadro anterior podem ser enviados como as informações de fase. Estas informações de fase são então utilizadas para a recuperação após os inícios falados perdidos como será posteriormente descrito. Tam- bém, como será posteriormente descrito, estas informações são também utilizadas para ressincronizar o sinal de excitação de quadros apagados de modo a aperfeiçoar a convergência nos quadros consecutivos corretamente recebidos (reduzir o erro propagado).
As informações de fase podem corresponder ou ao primeiro pul- so glótico no quadro ou ao último pulso glótico no quadro anterior. A escolha dependerá se um retardo extra está disponível no decodificador ou não. Nesta modalidade ilustrativa, um retardo de quadro está disponível no deco- dificador para a operação de sobrepor e somar na reconstrução de MDCT. Assim, quando um único quadro é apagado, os parâmetros do quadro futuro ficam disponíveis (devido ao retardo de quadro extra). Neste caso a posição e o sinal do pulso máximo no final do quadro apagado estão disponíveis do quadro futuro. Portanto a excitação de passo pode ser ocultada em um mo- do que o último pulso máximo fique alinhado com a posição recebida no quadro futuro. Isto será abaixo descrito em mais detalhes.
Nenhum retardo extra pode estar disponível no decodificador. Neste caso, as informações de fase não são utilizadas quando o quadro a- pagado é ocultado. No entanto, no quadro bem-recebido após o quadro a- pagado, as informações de fase são utilizadas para executar a sincronização de pulso glótico na memória do livro de códigos adaptável. Isto aperfeiçoará o desempenho reduzindo a propagação de erro.
Faça-se T0 ser o intervalo de passo de Ioop fechado arredonda- do para o último subquadro. A pesquisa do pulso máximo é executada sobre o resíduo de LP filtrado em passagem baixa. O resíduo filtrado em passa- gem baixa é dado por:
<formula>formula see original document page 41</formula>
O módulo de pesquisa de pulso glótico e de quantização 707 pesquisa a posição do último pulso glótico τ entre as T0 últimas amostras do~ resíduo filtrado em passagem baixa no quadro procurando pela amostra com a amplitude absoluta máxima (τ é a posição relativa até o final do quadro).
A posição do último pulso glótico é codificada utilizando 6 bits no seguinte modo. A precisão utilizada para codificar a posição do primeiro pul- so glótico depende do valor de passo de Ioop fechado para o último subqua- dro T0. Isto é possível porque este valor é conhecido tanto do codificador quando do decodificador, e não está sujeito à propagação de erro após uma ou diversas perdas de quadro. Quanto T0 é menor do que 64, a posição do último pulso glótico em relação ao final do quadro é codificada diretamente com uma precisão de uma amostra. Quando 64≤T0<128, a posição do último pulso glótico em relação ao final do quadro é codificada com uma pre- cisão de duas amostras utilizando uma simples divisão de inteiros, isto é τ/2. Quando T0 > 128, a posição do último pulso glótico em relação ao final do quadro é codificada com uma precisão de quatro amostras dividindo adicio- nalmente τ por 2. O procedimento inverso é feito no decodificador. Se T0 < 64, a posição quantizada recebida é utilizada como está. Se 64 < T0 < 128, a posição quantizada recebida é multiplicada por 2 e incrementada por 1. Se T0 > 128, a posição quantizada recebida é multiplicada por 4 e incrementada por 2 (incrementando por 2 resulta em um erro de quantização uniformemen- te distribuído).
O sinal da amplitude de pulso absoluta máxima é também quan- tizado. Isto fornece um total de 7 bits para as informações de fase. O sinal é utilizado para a ressincronização de fase já que na forma de pulso glótico freqüentemente contém dois grandes pulsos com sinais opostos. Ignorar o sinal pode resultar em uma pequena flutuação na posição e reduzir o de- sempenho do procedimento de ressincronização.
Deve ser notado que métodos eficientes para quantizar as in- formações de fase podem ser utilizados. Por exemplo a última posição de pulso no quadro anterior pode ser quantizada em relação a uma posição es- timada do intervalo de passo do primeiro subquadro no quadro presente (a posição pode ser facilmente estimada do primeiro pulso no quadro retardo pelo intervalo de passo).
No caso em que mais bits estão disponíveis, a forma do pulso glótico pode ser codificada. Neste caso, a posição do primeiro pulso glótico pode ser determinada por uma análise de correlação entre o sinal residual e as possíveis formas de pulso, os sinais (positivos ou negativos) e as posi- ções. A forma de pulso pode ser tomada de um livro de códigos ou de for- mas de pulso conhecidas tanto do codificador quanto do decodificador, este método sendo conhecido como quantização de vetor por aqueles versados na técnica. A forma, o sinal e a amplitude do primeiro pulso glótico são então codificados e transmitidos para o decodificador.
PROCESSAMENTO DE QUADROS APAGADOS
As técnicas de ocultação de FER nesta modalidade ilustrativa estão demonstradas sobre os codecs do tipo ACELP. Estas podem no en- tanto ser facilmente aplicadas a qualquer codec de voz onde o sinal de sín- tese é gerado pela filtragem de um sinal de excitação através de um filtro de síntese de LP. A estratégia de ocultação pode ser resumida como uma con- vergência da energia de sinal e o envelope espectral para os parâmetros estimados do ruído de fundo. A periodicidade do sinal é convergida para ze- ro. A velocidade da convergência é dependente dos parâmetros da classe do último quadro bem-recebido e do número de quadros apagados consecu- tivos e é controlada por um fator de atenuação α. O fator α é adicionalmente dependente da estabilidade do filtro de LP para os quadros NÃO-FALADOS.
Em geral, a convergência é lenta se o último quadro bem-recebido estiver em um segmento estável e é rápida se o quadro estiver em um segmento de transição. Os valores de α estão resumidos na Tabela 6.
Tabela 6 Valores do fator α de atenuação de ocultação de FER
<table>table see original document page 43</column></row><table>
Na tabela 6, gp é um ganho de passo médio por quadro dado por:
<formula>formula see original document page 43</formula>
O valor θ é um fator de estabilidade computado com base em uma medição de distância entre os filtros de LP adjacentes. Aqui, o fator θ está relacionado com a medição de distância de LSP (par espectral de linha) e está limitado por 0 ≤ θ ≤ 1, com os maiores valores de θ correspondendo a sinais mais estáveis. Isto resulta em uma energia decrescente e flutuações de envelope espectral quando um apagamento de quadro isolado ocorre dentro de um segmento não-falado estável. Nesta modalidade ilustrativa, o fator de estabilidade θ é dado por
<formula>formula see original document page 44</formula>
onde LSPi são os quadros presentes LSPs e LSPoIdi são os quadros passa- dos LSPs. Note que os LSPs estão no domínio de co-seno (de -1 a 1).
No caso das informações de classificação do quadro seguinte não estiverem disponíveis, a classe é ajustada para ser a mesma que no último quadro bem-recebido. Se as informações de classe estiverem dispo- níveis no quadro futuro a classe do quadro perdido é estimada com base na classe no quadro futuro e na classe do último quadro bom. Nesta modalida- de ilustrativa, a classe do quadro futuro pode estar disponível se a Camada 2 do quadro futuro for recebida (taxa de bits de quadro futuro acima de 8 kbit/s e não perdido). Se o codificador operar a uma taxa de bits máxima de 12 kbit/s então o retardo de quadro extra no decodificador utilizado para so- brepor e somar MDCT não é necessário e o implementador pode escolher diminuir o retardo de decodificador. Neste caso a ocultação será executada somente sobre as informações passadas. Isto será referido como um modo de decodificador de baixo retardo.
Faça-se a class0id denotar a classe do último quadro bom, e classnew denotar a classe do quadro futuro e classi0St é a classe do quadro perdido a ser estimado.
Inicialmente, classi0St é ajustada igual a class0id· Se o quadro fu- turo estiver disponível, então as suas informações de classe são decodifica- das em classnew- Então o valor de classiost é atualizado como segue:
- Se classnew for FALADA e class0id for INÍCIO, então classi0St é ajustada para FALADA.
- Se Classnew for FALADA e a classe do quadro antes do último quadro bom for INÍCIO ou FALADA, então classi0St é ajustada para FALADA.
- Se classnew for NÃO-FALADA e class0id for FALADA, então classlost é ajustada para TRANSIÇÃO NÃO-FALADA.
- Se classnew for FALADA ou INÍCIO e class0ld for NÃO-FALADA, então classlost é ajustada para SEM INÍCIO (reconstrução de início).
CONSTRUÇÃO DA PARTE PERIÓDICA DA EXCITACÃO
Para uma ocultação de quadros apagados cuja classe for ajus- tada para NÃO-FALADA ou TRANSIÇÃO NÃO-FALADA, nenhuma parte periódica do sinal de excitação é gerada. Para outras classes, a parte perió- dica do sinal de excitação é construída no seguinte modo.
Primeiro, o último ciclo de passo do quadro anterior é repetida- mente copiado. Se este for o caso do 12 quadro apagado após um quadro bom, este ciclo de passo é primeiramente filtrado em passagem baixa. O filtro utilizado é um simples filtro de FIR (Resposta de Impulso Finita) de fase linear de 3 derivações com coeficientes de filtro iguais a 0,18, 0,64 e 0,18.
O período de passo Tc utilizado para selecionar o último ciclo de passo e com isto utilizado durante a ocultação é definido de modo que pas- sos múltiplos ou submúltiplos possam ser evitados, ou reduzidos. A seguinte lógica é utilizada na determinação do período de passo Tc.
se ((T3 < 1,8 Ts) E (T3 > 0,6 Ts)) OU (Tcnt > 30), então Tc = T3 , ou então Tc = Ts.
Aqui, T3 é o período de passo arredondado do 4° subquadro do último quadro bem-recebido e Ts é o período de passo predito arredondado do Ar subquadro do último quadro falado estável bom com estimativas de passo coerentes. Um quadro falado estável está aqui definido como um quadro FALADO precedido por um quadro do tipo falado (TRANSIÇÃO FA- LADA, FALADO, INÍCIO). A coerência de passo é verificada nesta imple- mentação examinando se as estimativas de passo de Ioop fechado são ra- zoavelmente próximas, isto é, se as razões entre o passo do último subqua- dro, o passo do 2° subquadro e o passo do último quadro do quadro anterior estão dentro do intervalo (0,7, 1,4). Alternativamente, se existirem múltiplos quadros perdidos, T3 é o período de passo estimado arredondado do 4- subquadro do último quadro ocultado.
Esta determinação do período de passo Tc significa que se o passo no final do último quadro bom e o passo do último quadro estável esti- verem próximos um do outro, o passo do último quadro bom é utilizado. De outro modo este passo é considerado não confiável e o passo do último quadro estável é utilizado, em vez, para evitar o impacto de estimativas de passo erradas nos inícios falados. Esta lógica no entanto faz sentido somen- te se o último segmento estável não estiver muito distante no passado. Com isto um contador Tcnt é definido que limita o alcance da influência do último segmento estável. Se Tcnt for maior ou igual a 30, isto é se existirem pelo menos 30 quadros desde a última atualização Ts, o passo do último quadro bom é utilizado sistematicamente. Tcnt é reinicializado para 0 cada vez que um segmento estável é detectado e Ts é atualizado. O período Tc é então mantido constante durante a ocultação para todo o bloco apagado.
Para os quadros apagados que seguem um quadro corretamen- te recebido outro que NÃO-FALADO, o armazenamento de excitação é atua- lizado com esta parte periódica da excitação somente. Esta atualização será utilizada para construir a excitação de livro de códigos de passo no próximo quadro.
O procedimento acima descrito, pode resultar em uma flutuação na posição de pulso glótico, já que o período de passo utilizado para cons- truir a excitação pode ser diferente do período de passo verdadeiro no codi- ficador. Isto fará com que o armazenamento de livro de códigos adaptável (ou armazenamento de excitação passada) fique dessincronizado do arma- zenamento de excitação real. Assim, no caso em que um quadro bom é re- cebido após o quadro apagado, a excitação de passo (ou excitação de livro de código adaptável) terá um erro o qual pode persistir por diversos quadros e afetar o desempenho dos quadros corretamente recebidos.
A Figura 9 é um fluxograma que mostra o procedimento de ocul- tação 900 da parte periódica da excitação descrita na modalidade ilustrativa, e a Figura 10 é um fluxograma que mostra o procedimento de sincronização 1000 da parte periódica da excitação.
Para superar este problema e aperfeiçoar a convergência no decodificador, um método de ressincronização (900 na Figura 9) está descri- to o qual ajusta a posição do último pulso glótico no quadro ocultado a ser sincronizado com a posição de pulso glótico real. Em uma primeira imple- mentação, este procedimento de ressincronização pode ser executado com base nas informações de fase referentes à posição verdadeira do último pul- so glótico no quadro ocultado o qual é transmitido no quadro futuro. Em uma segunda implementação, a posição do último pulso glótico é estimada no decodificador quando as informações do quadro futuro não estão disponí- veis.
Como acima descrito, a excitação de passo do quadro perdido inteiro é construída repetindo o último ciclo de passo Tc do quadro anterior (operação 906 na Figura 9), onde Tc está definido acima. Para o primeiro quadro apagado (detectado durante a operação 902 na Figura 9) o ciclo de passo é primeiramente filtrado em passagem baixa (operação 904 na Figura 9) utilizando um filtro com os coeficientes 0,18, 0,64, e 0,18. Isto é feito como segue:
u(n) = 0.18u(n-Te -1)+ 0.64u(n - Tc)+ 0.18u(n-Tc +1), n=0,...,Tc-1
u(n) = u(n-Tc), n = Tc,...,L + N - 1 (26)
onde u(n) é o sinal de excitação, L é o tamanho de quadro, e N é o tamanho de subquadro. Se este não for o primeiro quadro apagado, a excitação ocul- tada é simplesmente construída como:
U(n) = u(n-Tc), n=0,..., L + N -1 (27)
Deve ser notado que a excitação ocultada é também computada para um subquadro extra para ajudar na ressincronização será como abaixo mostrado.
Uma vez que a excitação ocultada é encontrada, o procedimento de ressincronização é executado como segue. Se o quadro futuro estiver disponível (operação 908 na Figura 9) e contiver as informações de pulso glótico, então estas informações são decodificadas (operação 910 na Figura 9). Como acima descrito, estas informações consistem na posição do pulso máximo absoluto do final do quadro e no seu sinal. Fazendo esta posição decodificada ser denotada P0 então a posição real do pulso máximo absoluto é dada por: Plast = L - Po
Então a posição do pulso máximo na excitação ocultada do iní- cio do quadro com um sinal similar às informações de sinal decodificadas é determinado com base em uma excitação filtrada passada baixa (operação 912 na Figura 9). Isto é, se a posição de pulso máximo decodificado for posi- tiva então um pulso positivo máximo na excitação ocultada do início do qua- dro é determinada, de outro modo o pulso máximo negativo é determinado. Faça-se o primeiro pulso máximo na excitação ocultada ser denotado T(O). As posições dos outros pulsos máximos são dadas por (operação 914 na Figura9):
<formula>formula see original document page 48</formula>
onde Np é o número de pulsos (incluindo o primeiro pulso no quadro futuro).
O erro na posição de pulso do último pulso ocultado no quadro é encontrado (operação 916 na Figura 9) pesquisando pelo pulso T(i) mais próximo do pulso real Piast· Se o erro for dado por:
Te = Plast - T(k), onde k é o índice do pulso mais próximo de Plast.
Se Te = 0, então nenhuma ressincronização é requerida (opera- ção 918 na Figura 9). Se o valor de Te for positivo (T(k) < Plast) então amos- tras de Te precisam ser inseridas (operação 1002 na Figura 10). Se Te for negativo (T(k) > Plast) então amostras de Te precisam ser removidas (opera- ção 1002 na Figura 10). Ainda, a ressincronização é executada somente se Te < N e Te < Np χ Tdiff, onde N é o tamanho de subquadro e Tdiff é a diferen- ça absoluta entre Tc e o intervalo de passo do primeiro subquadro no quadro futuro (operação 918 na Figura 9).
As amostras que precisam ser adicionadas ou apagadas estão distribuídas através dos ciclos de passo no quadro. As regiões de energia mínima nos diferentes ciclos de passo são determinadas e o apagamento ou a inserção de amostras é executado nestas regiões. O número de pulsos de passo no quadro é Np nas respectivas posições T(i), i = 0.....Np-1. O núme- ro de regiões de energia mínima é Np-1. As regiões de energia mínima são determinadas pela computação da energia utilizando uma janela de 5 amos- tras deslizante (operação 1002 na Figura 10). A posição de energia mínima é ajustada no meio da janela na qual a energia está no mínimo (operação 1004 na Figura 10). A pesquisa executada entre dois pulsos de passo na posição T(i) e T(i+1) está restrita entre T(i) + Tc/4 e T(i+1) + Tc/4.
Faça-se as posições mínimas determinadas como acima descri- to serem denotadas como Tmin(i), i=0.....Nmin-1, onde Nmin= Np-1 é o número de regiões de energia mínima. O apagamento ou inserção de amostras é executado ao redor de Tmin(i). As amostras a serem adicionadas ou apaga- das estão distribuídas através dos diferentes ciclos de passo como será descrito como segue.
Se Nmin=1, então existe somente uma região de energia mínima e todos os pulsos Te são inseridos ou apagados em Tmin(O).
Para Nmin>1, um algoritmo simples é utilizado para determinar o número de amostras a serem adicionadas ou removidas em cada ciclo de passo por meio de que menos amostras são adicionadas/removidas no início e mais na direção do final do quadro (operação 1006 na Figura 10). Nesta modalidade ilustrativa, para os valores de número total de pulsos a serem removidos/adicionados Te e o número de regiões de energia mínima Nmin, o número de amostras a serem removidas/adicionadas por ciclo de passo, R(i), i=0,..., Nmin-1, é encontrado utilizando a seguinte relação repetitiva (ope- ração 1006 na figura 10):
<formula>formula see original document page 49</formula>
Deve ser notado que, em cada estágio, a condição R(i) < R(i-1) é verificada e se for verdadeira, então os valores de R(i) e R(i-1) são intercam- biados.
Os valores de R(i) correspondem a ciclos de passo que come- çam do início do quadro. R(O) corresponde a Tmin(O), R(1) corresponde a Tmin(1), ..., R(Nmin-1) corresponde a Tmjn(Nmin-1). Como os valores de R(i) estão em ordem crescente, então mais amostras são adicionadas/removidas na direção dos ciclos no final do quadro. Como um exemplo para a computação de R(i), para Te = 11 ou - 11 Nmin= 4 (11 amostras a serem adicionadas/removidas e 4 ciclos de passo no quadro), os seguintes valores de R(i) são encontrados:
f=2X11/16= 1,375
R(0)=redor(f/2)= 1
R(1) = redor (2f - 1) = 2
R(2) = redor (4,5f -1-2) = 3
R(3) = redor (8f - 1 - 2 - 3) = 5
Assim, 1 amostra é adicionada/removida ao redor da posição de energia mínima Tmin(O)1 2 amostras são adicionadas/removidas ao redor da posição de energia mínima Tmin(I), 3 amostras são adicionadas/removidas ao redor da posição de energia mínima Tmin(2), e 5 amostras são adiciona- das/removidas ao redor da posição de energia mínima Tmin(3) (operação 1008 na Figura 10).
A remoção de amostras é direta. A adição de amostras (opera- ção 1008 na figura 10) é executada nesta modalidade ilustrativa copiando as últimas R(i) amostras após dividir por 20 e inverter o sinal. No exemplo aci- ma onde 5 amostras precisam ser inseridas na posição Tmjn(3), o seguinte é executado:
<formula>formula see original document page 50</formula> (30)
Utilizando o procedimento acima descrito, o último pulso máximo na excitação ocultada é forçado a alinhar com a posição de pulso máximo real no final do quadro o qual é transmitido no quadro futuro (operação 920 na Figura 9 e operação 1010 na Figura 10).
Se as informações de fase de pulso não estiverem disponíveis mas o quadro futuro está disponível, o valor de passo do quadro futuro pode ser interpolado com o valor de passo passado para encontrar os intervalos de passo estimados por subquadro. Se o quadro futuro não estiver disponí- vel, o valor de passo do quadro faltante pode ser estimado então interpolado com o valor de passo passado para encontrar os intervalos de passo esti- mados por subquadro. Então o retardo total de todos os ciclos de passo no quadro ocultado é computado tanto para o último passo utilizado na oculta- ção quanto para os intervalos de passo estimados por subquadro. A diferen- ça entre estes dois retardos fornece uma estimativa da diferença entre o úl- timo pulso máximo ocultado no quadro e o pulso estimado. Os pulsos podem então ser ressincronizados como acima descrito (operação 920 na Figura 9 e operação 1010 na Figura 10)
Se o decodificador não tiver nenhum retardo extra, as informa- ções de fase de pulso presentes no quadro futuro podem ser utilizadas no primeiro quadro bem-recebido para ressincronizar a memória do livro de có- digos adaptável (a excitação passada) e conseguir o último pulso glótico máximo alinhado com a posição transmitida no quadro corrente antes de construir a excitação do quadro corrente. Neste caso, a sincronização será feita exatamente como acima descrito, mas na memória da excitação em vez de ser feita na excitação corrente. Neste caso a construção da excitação corrente iniciará com uma memória sincronizada.
Quando nenhum retardo extra está disponível, é também possí- vel enviar a posição do primeiro pulso máximo do quadro corrente ao invés da posição do último pulso glótico máximo do último quadro. Se este for o caso, a sincronização é também conseguida na memória da excitação antes de construir a excitação corrente. Com esta configuração, a posição real do pulso máximo absoluto na memória da excitação é dada por: ^ ^
Plast =L+ Po - Tnew
onde Tnew é o primeiro ciclo de passo do novo quadro e P0 é a posição de- codificada do primeiro pulso glótico máximo do quadro corrente.
Como o último pulso da excitação do quadro anterior é utilizado para a construção da parte periódica, o seu ganho está aproximadamente correto no início do quadro ocultado e pode ser ajustado para 1 (operação 922 na Figura 9). O ganho é então atenuado linearmente através de todo o quadro em uma base de amostra por amostra para conseguir o valor de α no final do quadro (operação 924 na Figura 9).
Os valores de a (operação 922 na Figura 9) correspondem aos valores da Tabela 6 os quais levam em consideração a evolução de energia de segmentos falados. Esta evolução pode ser extrapolada a um certo grau pela utilização dos valores de ganho de excitação de passo de cada sub- quadro do último quadro bom. Em geral, se estes ganhos forem maiores do que 1, a energia de sinal é crescente, se estes forem menores do que 1, a energia é decrescente, α é assim ajustado para
<formula>formula see original document page 52</formula>
como acima descri- to. O valor de β está cortado entre 0,98 e 0,85 para evitar fortes aumentos e diminuições de energia.
Para os quadros apagados que seguem um quadro corretamen- te recebido outro do que NÃO-FALADO, o armazenamento de excitação é atualizado com a parte periódica da excitação somente (após a ressincroni- zação e a escalagem de ganho). Esta atualização será utilizada para cons- truir a excitação de livro de código de passo no próximo quadro (operação 926 na Figura 9).
A Figura 11 mostra exemplos típicos do sinal de excitação com e sem o procedimento de sincronização. O sinal de excitação original sem a- pagamento de quadro está mostrado na Figura 11b. A Figura 11c mostra o sinal de excitação ocultado quando o quadro mostrado na Figura 11a é apa- gado, sem utilizar o procedimento de sincronização. Pode ser claramente visto que o último pulso glótico no quadro ocultado não está alinhado com a posição de pulso verdadeira mostrada na Figura 11 b. Ainda, pode ser visto que o efeito de ocultação de apagamento de quadro persiste nos quadros seguintes os quais não foram apagados. A Figura 11 d mostra o sinal de ex- citação ocultado quando o procedimento de sincronização de acordo com a modalidade ilustrativa da invenção acima descrita é utilizado. Pode ser cla- ramente visto que o último pulso glótico no quadro ocultado está apropria- damente alinhado com a posição de pulso verdadeira mostrada na Figura 11b. Ainda, pode ser visto que o efeito de ocultação de apagamento de qua- dro sobre os quadros apropriadamente recebidos seguintes é menos pro- blemático do que o caso da Figura 11c. Esta observação é confirmada nas Figuras 11e e 11f. A Figura 11e mostra o erro entre a excitação original e a excitação ocultada sem sincronização. A Figura 11f mostra o erro entre a excitação original e a excitação ocultada quando o procedimento de sincro- nização é utilizado. A Figura 12 mostra exemplos do sinal de voz reconstruído utili- zando os sinais de excitação mostrados na Figura 11. o sinal reconstruído sem apagamento de quadro está mostrado na Figura 12b. A Figura 12c mostra o sinal de voz reconstruído quando o quadro mostrado na Figura 12a é apagado, sem utilizar o procedimento de sincronização. A Figura 12d mos- tra o sinal de voz reconstruído quando o quadro mostrado na Figura 12a é apagado, com a utilização do procedimento de sincronização como descrito na modalidade ilustrativa da presente invenção acima. A Figura 12e mostra a razão de sinal para ruído (SNR) por subquadro entre o sinal original e o sinal na Figura 12c. Pode ser visto da Figura 12e que a SNR permanece muito baixa mesmo quando bons quadros são recebidos (esta permanece abaixo de O dB para os próximos dois quadros bons e permanece abaixo de 8 dB até o 72 quadro bom). A Figura 12f mostra a razão de sinal para ruído (SNR) por subquadro entre o sinal original e o sinal na Figura 12d. Pode ser visto da Figura 12d que o sinal rapidamente converge para o sinal reconstru- ído verdadeiro. A SNR sobe rapidamente acima de 10 dB após dois quadros bons.
CONSTRUÇÃO DA PARTE RANDÔMICA DA EXCITAÇÃO
A parte (não periódica) da inovação do sinal de excitação é ge- rada randomicamente. Esta pode ser gerada como um ruído randômico ou pela utilização do livro de códigos da inovação de CEL com índices de vetor gerados randomicamente. Na presente modalidade ilustrativa, um gerador randômico simples com uma distribuição aproximadamente uniforme foi utili- zado. Antes de ajustar o ganho da inovação, a inovação randomicamente gerada é escalada para algum valor de referência, aqui fixo na energia unitá- ria por amostra.
Após o início de um bloco apagado, o ganho da inovação gs é inicializado pela utilização dos ganhos de excitação da inovação de cada subquadro do último quadro bom:
9b = 0.1g(0)+0.2g(1)+0.3g(2)+0.4g(3) (31)
onde g(0), g(1), g(2) e g(3) são os ganhos do livro de códigos fixo, ou da ino- vação dos quatro (4) subquadros do último quadro recebido corretamente. A estratégia de atenuação da parte randômica da excitação é um pouco dife- rente da atenuação da excitação de passo. A razão é que a excitação de passo (e assim a periodicidade de excitação) está convergindo para 0 en- quanto que a excitação randômica está convergindo para a energia de exci- tação de geração de ruído de conforto (CNG). A atenuação de ganho da ino- vação é feita como:
<formula>formula see original document page 54</formula>
onde gs1 é o ganho da inovação no início do próximo quadro, gs° é o ganho da inovação no início do quadro corrente, gn é o ganho da excitação utilizada durante a geração de ruído de conforto e α é como definido na Tabela 5. Similarmente à atenuação de excitação periódica, o ganho é assim linear- mente atenuado através de todo o quadro em uma base de amostra por a- mostra começando com gs° e indo para o valor de gs1 que seria conseguindo no início do próximo quadro.
Finalmente, se o último quadro bem-recebido (corretamente re- cebido não apagado) for diferente de NÃO-FALADO, a excitação da inova- ção é filtrada através de um filtro de passagem alta FIR de fase linear com coeficientes -0,0125, -0,109, 0,7813, -0,109, -0,0125. Para diminuir a quanti- dade de componentes ruidosos durante os segmentos falados, estes coefici- entes de filtro são multiplicados por um fator adaptável igual a (0,75 - 0,25 rv), rv sendo um fator de fala na faixa de -1 a 1. A parte randômica da excita- ção é então adicionada à excitação adaptável para formar o sinal de excita- ção total.
Se o último quadro bom for NÃO-FALADO, somente a excitação da inovação é utilizada e esta é adicionalmente atenuada por um fator 0,8. Neste caso, o armazenamento de excitação passada é atualizado com a excitação da inovação já que nenhuma parte periódica da excitação está disponível.
OCULTAÇÃO, SÍNTESE E ATUALIZAÇÕES DE ENVELOPE ESPECTRAL
Para sintetizar a voz decodificada, os parâmetros de filtro de LP devem ser obtidos.
No caso em que o quadro futuro não está disponível, o envelope espectral é gradualmente movido para o envelope estimado do ruído ambi- ente. Aqui a representação de LSF de um dos parâmetros de LP é utilizada:
<formula>formula see original document page 55</formula>
Na equação (33), l1(j) é o valor do j2 LSF do quadro corrente, 1°(j) é o valor do j2 LSF do quadro anterior, f (j) é o valor do j2 LSF do envelope de ruído de conforto estimado e ρ é a ordem do filtro de LP (note que os LSFs estão no domínio de freqüência). Alternativamente, os parâmetros de LSF do quadro apagado podem ser simplesmente ajustados iguais aos pa- râmetros do último quadro (I1 (j) = 1°(j)).
A voz sintetizada é obtida pela filtragem do sinal de excitação através do filtro de síntese de LP. Os coeficientes de filtro são computados da representação de LSF e são interpolados para cada subquadro (quatro (4) vezes por quadro) como durante uma operação de codificador normal.
No caso em que o quadro futuro está disponível, os parâmetros de filtro de LP por subquadro são obtidos pela interpolação dos valores de LSP nos quadros futuro e anterior. Diversos métodos podem ser utilizados para encontrar os parâmetros interpolados. Em um método os parâmetros de LSP do quadro inteiro são encontrados utilizando a relação:
<formula>formula see original document page 55</formula>
onde LSP(1) são os LSPs estimados do quadro apagado, LSP(0) são os LSPs no quadro passado e LSP(2) são os LSPs no quadro futuro.
Como um exemplo não limitativo, os parâmetros de LSP são transmitidos duas vezes por quadro de 20 ms (centrados no segundo e quar- to subquadros). Assim o LSP(0) está centrado no quarto subquadro do qua- dro passado e LSP(2) está centrado no segundo subquadro do quadro futuro. Assim os parâmetros de LSP interpolados podem ser encontrados para cada subquadro no quadro apagado como:
<formula>formula see original document page 55</formula>
onde i é o índice de subquadro. Os LSPs estão no domínio de co-seno (-1 a 1).
Como o quantizador de ganho e o quantizador de LSF da inova- ção ambos utilizam uma predição, a sua memória não estará atualizada a- pós a operação normal ser retomada. Para reduzir este efeito, as memórias dos quantizadores são estimadas e atualizadas no final de cada quadro a- pagado.
RECUPERAÇÃO DA OPERAÇÃO NORMAL APÓS O APAGAMENTO
O problema da recuperação após um bloco de quadros apaga- dos é basicamente devido à forte predição utilizada praticamente em todos os codificadores de voz modernos. Especificamente, os codificadores de voz do tipo CELP conseguem a sua alta razão de sinal para ruído para a voz falada devido ao fato de que estes estão utilizando o sinal de excitação pas- sada para codificar a excitação de quadro presente (predição de longo prazo ou de passo). Também, a maioria dos quantizadores (quantizadores de LP, quantizadores de ganho, etc.) fazem uso de uma predição.
CONSTRUÇÃO DE INÍCIO ARTIFICIAL
A situação mais complicada em relação à utilização da predição de longo prazo nos codificadores de CELP é quando um início falado é per- dido. O início perdido significa que o início de voz falada aconteceu em al- gum lugar durante o bloco apagado. Neste caso, o último quadro bem- recebido era não-falado e assim nenhuma excitação periódica é encontrada no armazenamento de excitação. O primeiro quadro bom após o bloco apa- gado é no entanto falado, o armazenamento de excitação no codificador é altamente periódico e a excitação adaptável foi codificada utilizando esta excitação passada periódica. Como esta parte periódica da excitação está faltando completamente no decodificador, pode demorar diversos quadros para recuperar desta perda.
Se um quadro de INÍCIO for perdido (isto é, um quadro bem- falado chega após um apagamento, mas o último quadro bom antes do apa- gamento era NÃO-FALADO como mostrado na Figura 13), uma técnica es- pecial é utilizada para reconstruir artificialmente o início perdido e disparar a síntese de voz. Nesta modalidade ilustrativa, a posição do último pulso glóti- co no quadro ocultado pode estar disponível do quadro futuro (o quadro futu- ro não está perdido e as informações de fase relativas ao quadro anterior recebidas no quadro futuro). Neste caso, a ocultação do quadro apagado é executada como usual. No entanto, o último pulso glótico do quadro apaga- do é artificialmente reconstruído com base nas informações de posição e de sinal disponíveis do quadro futuro. Estas informações consistem na posição do pulso máximo do final do quadro e o seu sinal. O último pulso glótico no quadro apagado é assim reconstruído artificialmente como um pulso filtrado em passagem baixa. Nesta modalidade ilustrativa, se o sinal de pulso for positivo, o filtro de passagem baixa utilizado é um simples filtro FIR de fase linear com a resposta de impulso h|OW = {-0,0125, 0,109, 0,7813, 0,109, - 0,0125}. Se o sinal de pulso for negativo, o filtro de passagem baixa é um filtro FIR de fase linear com a resposta de impulso h|0W = {0,0125, -0,109, - 0,7813,-0,109,0,0125}.
O período de passo considerado é o último subquadro do quadro ocultado. O pulso filtrado em passagem baixa é executado colocando a res- posta de impulso do filtro de passagem baixa na memória do armazenamen- to de excitação adaptável (anteriormente inicializado para zero). O pulso gló- tico filtrado em passagem baixa (resposta de impulso de filtro de passagem baixa) será centrado na posição decodificada Piast (transmitida dentro do flu- xo de bits do quadro futuro). Na decodificação do próximo quadro bom, uma decodificação de CELP normal é retomada. Colocando o pulso glótico filtra- do em passagem baixa na posição apropriada no final do quadro ocultado aperfeiçoa significativamente o desempenho dos bons quadros consecutivos e acelera a convergência de decodificador para os estados de decodificador reais.
A energia da parte periódica da excitação de início artificial é então escalada pelo ganho que corresponde à energia quantizada e transmi- tida para a ocultação de FER e dividida pelo ganho do filtro de síntese de LP. O ganho de filtro de síntese de LP é computado como:
<formula>formula see original document page 57</formula>
onde h(i) é a resposta de impulso de filtro de síntese de LP. Finalmente, o ganho de início artificial é reduzido multiplicando a parte periódica por 0,96. O filtro de LP para a síntese de voz de saída não é interpolado no caso de uma construção de início artificial. Ao contrário, os parâmetros de LP recebidos são utilizados para a síntese do quadro inteiro.
CONTROLE DE ENERGIA
Uma tarefa na recuperação após um bloco de quadros apagados é de controlar apropriadamente a energia do sinal de voz sintetizado. O con- trole de energia de síntese é necessário devido à forte predição usualmente utilizada nos codificadores de voz modernos. O controle de energia é tam- bém executado quando um bloco de quadros apagados acontece durante um segmento falado. Quando um apagamento de quadro chega após um quadro falado, a excitação do último quadro bom é tipicamente utilizada du- rante a ocultação com alguma estratégia de atenuação. Quando um novo filtro de LP chega com o primeiro quadro bom após o apagamento, pode e- xistir um descasamento entre a energia de excitação e o ganho do novo filtro de síntese de LP. O novo filtro de síntese pode produzir um sinal de síntese com uma energia altamente diferente da energia do último quadro apagado sintetizado e também da energia de sinal original.
O controle de energia durante o primeiro quadro bom após um quadro apagado pode ser resumido como segue. O sinal sintetizado é esca- lado de modo que a sua energia seja similar à energia do sinal de voz sinte- tizado no final do último quadro apagado no início do primeiro quadro bom e está convergindo para a energia transmitida na direção do final do quadro para impedir um aumento de energia muito alto.
O controle de energia é feito no domínio de sinal de voz sinteti- zado. Mesmo se a energia for controlada no domínio de voz, o sinal de exci- tação deve ser escalado já que este serve como uma memória de predição de longo prazo para os quadros seguintes. A síntese é então refeita para suavizar as transições. Faça-se go denotar o ganho utilizado para escalar a 1â amostra no quadro corrente e gi o ganho utilizado no final do quadro. O sinal de excitação é então escalado como segue:
<formula>formula see original document page 58</formula>
onde us(i) é a excitação escalada, u(i) é a excitação antes da escalagem, L é o comprimento de quadro e gAGc(i) é o ganho que começa de g0 convergindo exponencialmente para gi:
<formula>formula see original document page 59</formula>
com a inicialização de gAGc(-1) = go, onde íagc é o fator de atenuação ajusta- do nesta implementação para o valor de 0,98. Este valor foi encontrado ex- perimentalmente como um compromisso de ter uma transição suave do quadro anterior (apagado) de um lado, e escalar o último período de passo do quadro atual tanto quanto possível para corrigir o valor (transmitido), do outro lado. Isto é feito porque o valor de energia transmitida é estimado sin- cronizadamente em passo no final do quadro. Os ganhos g0 e g1 são defini- dos como:
<formula>formula see original document page 59</formula>
onde E-1 é a energia computada no final do quadro anterior (apagado), E0 é a energia no início do quadro corrente (recuperado), E1 é a energia no final do quadro corrente e Eq é a informação de energia transmitida quantizada no final do quadro corrente, computada no codificador das Equações (21; 21). E-1 e E1 são computadas similarmente com a exceção de que estas são computadas no sinal de voz sintetizado s'. E.i é computada sincronizada- mente em passo utilizando o período de passo de ocultação Tc e E1 utiliza o passo arredondado de último subquadro T3. Eo é computada similarmente utilizando o valor de passo arredondado T0 do primeiro subquadro, as equa- ções (20; 21) sendo modificadas para:
<formula>formula see original document page 59</formula>
para os quadros FALADO e INÍCIO. tE é igual ao intervalo de passo arredon- dado ou o dobro deste comprimento se o passo for mais curto do que 64 amostras. Para os outros quadros,
<formula>formula see original document page 59</formula>
com tE igual à metade do comprimento de quadro. Os ganhos g0 e g1 estão adicionalmente limitados a um valor permitido máximo, para impedir uma forte energia. Este valor foi ajustado para 1,2 na presente implementação ilustrativa.
Conduzir uma ocultação de apagamento de quadro e recupera- ção de decodificador compreende, quando um ganho de um filtro de LP de um primeiro quadro não apagado recebido após um apagamento de quadro é mais alto do que um ganho de um filtro de LP de um último quadro apaga- do durante o dito apagamento de quadro, ajustar a energia de um sinal de excitação de filtro de LP produzido no decodificador durante o primeiro qua- dro não apagado recebido para um ganho do filtro de LP do dito primeiro quadro não apagado recebido utilizando a seguinte relação.
Se Eq não puder ser transmitido, Eq é ajustado para E1. Se no entanto o apagamento acontece durante um segmento de voz falada (isto é o último quadro bom antes do apagamento e o primeiro quadro bom após o apagamento são classificados como TRANSIÇÃO FALADA, FALADO ou INÍCIO), precauções adicionais devem ser tomadas devido ao possível des- casamento entre a energia de sinal de excitação e o ganho de filtro de LP1 anteriormente mencionado. Uma situação especificamente perigosa surge quando o ganho do filtro de LP de um primeiro quadro não apagado recebido após um apagamento de quadro é mais alto do que o ganho do filtro de LP de um último quadro apagado durante aquele apagamento de quadro. Neste caso específico, a energia do sinal de excitação de filtro de LP produzida no decodificador durante o primeiro quadro não apagado recebido é ajustada para um ganho do filtro de LP do primeiro quadro não apagado recebido uti- lizando a seguinte relação:
<formula>formula see original document page 60</formula>
onde ELP0 é a energia da resposta de impulso de filtro de LP do último qua- dro bom antes do apagamento e ELpi é a energia do filtro de LP do primeiro quadro bom após o apagamento. Nesta implementação, os filtros de LP dos últimos subquadros em um quadro são utilizados. Finalmente, o valor de Eq está limitado ao valor de E-i neste caso (apagamento de segmento falado sem as informações de Eq sendo transmitidas). As seguintes exceções, todas relativas a transições em sinal de voz, adicionalmente sobrescrevem a computação de go- Se um início artifici- al for utilizado no quadro corrente, g0 é ajustado para 0,5 g1, para fazer a energia de início crescer gradualmente.
No caso de um primeiro quadro bom após um apagamento clas- sificado como INÍCIO, o ganho go é impedido de ser mais alto do que gi. Es- ta precaução é tomada para impedir que um ajuste de ganho positivo no iní- cio do quadro (o qual é provavelmente ainda pelo menos parcialmente não- falado) amplifique o início falado (no final do quadro).
Finalmente, durante uma transição de falado para não-falado (isto é o último quadro bom sendo classificado como TRANSIÇÃO FALADA, FALADO ou INÍCIO e o quadro corrente sendo classificado NÃO-FALADO) ou durante uma transição de um período de voz não ativa para um período de voz ativa (o último quadro bem-recebido sendo codificado como ruído de conforto e o quadro corrente sendo codificado como voz ativa), o g0 é ajus- tado para g1.
No caso de um apagamento de segmento falado, o problema de energia errada pode manifestar-se também em quadros seguintes ao primei- ro quadro bom após o apagamento. Isto pode acontecer mesmo se a ener- gia do primeiro quadro bom tiver sido ajustada como acima descrito. Para atenuar este problema, o controle de energia pode ser continuado até o final do segmento falado.
APLICAÇÃO DA OCULTACÃO DESCRITA EM UM CODEC INCORPORA- DO COM UMA CAMADA DE NÚCLEO DE BANDA LARGA
Como acima mencionado, a modalidade ilustrativa da presente invenção acima descrita foi também utilizada em um algoritmo candidato para a padronização de um codec de taxa de bit variável incorporado pela ITU-T. No algoritmo candidato, a camada de núcleo está baseada em uma técnica de codificação de banda larga similar à AMR-WB (Recomendação ITU-T G.722.2). A camada de núcleo opera a 8 kbit/s e codifica uma largura de banda até 6400 Hz com uma freqüência de amostragem interna de 12,8 kHz (similar à AMR-WB). Uma segunda camada de CELP de 4 kbit/s é utili- zada aumentando a taxa de bit para 12 kbit/s. Então a MDCT é utilizada para obter as camadas superiores de 16 a 32 kbit/s.
A ocultação é similar ao método acima descrito com poucas dife- renças principalmente devido à diferente taxa de amostragem da camada de núcleo. O tamanho de quadro é de 256 amostras a uma taxa de amostragem de 12,8 kHz e o tamanho de subquadro é de 64 amostras.
As informações de fase são codificadas com 8 bits onde o sinal é codificado com 1 bit e a posição é codificada com 7 bits como segue.
A precisão utilizada para codificar a posição do primeiro pulso glótico depende do valor de passo de Ioop fechado T0 para o primeiro sub- quadro no quadro futuro. Quando T0 é menor do que 128, a posição do últi- mo pulso glótico em relação ao final do quadro é codificada diretamente com uma precisão de uma amostra. Quando T0 > 128, a posição do último pulso glótico em relação ao final do quadro é codificada com uma precisão de du- as amostras pela utilização de uma simples divisão de inteiros, isto é τ/2. O procedimento inverso é feito no decodificador. Se T0 < 128, a posição quan- tizada recebida é utilizada como está. Se T0 > 128, a posição quantizada recebida é multiplicada por 2 e incrementada por 1.
Os parâmetros de recuperação de ocultação consistem nas in- formações de fase de 8 bits, nas informações de classificação de 2 bits, e nas informações de energia de 6 bits. Estes parâmetros são transmitidos na terceira camada a 16 kbit/s.
Apesar da presente invenção ter sido descrita na descrição aci- ma em relação a uma sua modalidade ilustrativa não-restritiva, esta modali- dade pode ser modificada à vontade, dentro do escopo das reivindicações anexas sem afastar-se do escopo e do espírito da invenção presente. REFERÊNCIAS
[1] Milan Jelinek e Philippe Gournay. Pedido de Patente PCT W003102921A1, "Método e dispositivo para uma eficiente ocultação de a- pagamento de quadro em codecs de voz baseados em preditivo linear".

Claims (70)

1. Método para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o método compreendendo: no codificador, determinar os parâmetros de ocultação/recu- peração que incluem pelo menos as informações de fase relativas aos qua- dros do sinal sonoro codificado; transmitir para o decodificador os parâmetros de oculta- ção/recuperação determinados no codificador; e no decodificador, conduzir a ocultação de apagamento de qua- dro em resposta aos parâmetros de ocultação/recuperação recebidos, em que a ocultação de apagamento de quadro compreende ressincronizar, em resposta às informações de fase recebidas, os quadros ocultados por apa- gamento com os quadros correspondentes do sinal sonoro codificado no codificador.
2. Método de acordo com a reivindicação 1, em que a determi- nação dos parâmetros de ocultação/recuperação compreende determinar como as informações de fase uma posição de um pulso glótico em cada quadro do sinal sonoro codificado.
3. Método de acordo com a reivindicação 1, em que a determi- nação dos parâmetros de ocultação/recuperação compreende determinar como as informações de fase uma posição e um sinal de um último pulso glótico em cada quadro do sinal sonoro codificado.
4. Método de acordo com a reivindicação 2, ainda compreen- dendo quantizar a posição do pulso glótico antes de transmitir a posição do pulso glótico para o decodificador.
5. Método de acordo com a reivindicação 3, ainda compreen- dendo quantizar a posição e o sinal do último pulso glótico antes de transmi- tir a posição e o sinal do último pulso glótico para o decodificador.
6. Método de acordo com a reivindicação 2, ainda compreen- dendo, codificar a posição quantizada do pulso glótico em um quadro futuro do sinal sonoro codificado.
7. Método de acordo com a reivindicação 2, em que determinar a posição do pulso glótico compreende: medir o pulso glótico como um pulso de amplitude máxima em um ciclo de passo predeterminado de cada quadro do sinal sonoro codifica- do; e determinar a posição do pulso de amplitude máxima.
8. Método de acordo com a reivindicação 7, ainda compreen- dendo determinar como as informações de fase um sinal do pulso glótico pela medição de um sinal do pulso de amplitude máxima.
9. Método de acordo com a reivindicação 3, em que determinar a posição do último pulso glótico compreende: medir o último pulso glótico como um pulso de amplitude máxi- ma em cada quadro do sinal sonoro codificado; e determinar a posição do pulso de amplitude máxima.
10. Método de acordo com a reivindicação 9, em que determinar o sinal do pulso glótico compreende: medir um sinal do pulso de amplitude máxima.
11. Método de acordo com a reivindicação 10, em que ressin-, cronizar um quadro ocultado por apagamento com um quadro corresponden- te do sinal sonoro codificado compreende: decodificar a posição e o sinal do último pulso glótico do dito quadro correspondente do sinal sonoro codificado; determinar, no quadro ocultado por apagamento, uma posição de um pulso de amplitude máxima que tem um sinal similar ao sinal do últi- mo pulso glótico do quadro correspondente do sinal sonoro codificado, mais próximo da posição do dito último pulso glótico do dito quadro corresponden- te do dito sinal sonoro codificado; e alinhar a posição do pulso de amplitude máxima no quadro ocul- tado por apagamento com a posição do último pulso glótico do quadro cor- respondente do sinal sonoro codificado.
12. Método de acordo com a reivindicação 7, èm que ressincro- nizar um quadro ocultado por apagamento com um quadro correspondente do sinal sonoro codificado compreende: decodificar a posição do pulso glótico do dito quadro correspon- dente do sinal sonoro codificado; determinar, no quadro ocultado por apagamento, uma posição de um pulso de amplitude máxima mais próximo da posição do dito pulso glótico do dito quadro correspondente do dito sinal sonoro codificado; e alinhar a posição do pulso de amplitude máxima no quadro ocul- tado por apagamento com a posição do pulso glótico do quadro correspon- dente do sinal sonoro codificado.
13. Método de acordo com a reivindicação 12, em que alinhar a posição do pulso de amplitude máxima no quadro ocultado por apagamento com a posição do pulso glótico no quadro correspondente do sinal sonoro codificado compreende: determinar um deslocamento entre a posição do pulso de ampli- tude máxima no quadro ocultado por apagamento e a posição do pulso glóti- co no quadro correspondente do sinal sonoro codificado; e inserir/remover no quadro ocultado por apagamento um número de amostras que correspondem ao deslocamento determinado.
14. Método de acordo com a reivindicação 13, em que inse- rir/remover o número de amostras compreende: determinar pelo menos uma região de energia mínima no quadro ocultado por apagamento; e distribuir o número de amostras a serem inseridas/removidas ao redor da pelo menos uma região de energia mínima.
15. Método de acordo com a reivindicação 9, em que distribuir o número de amostras a serem inseridas/removidas ao redor da pelo menos uma região de energia mínima compreende distribuir o número de amostras ao redor da pelo menos uma região de energia mínima utilizando a seguinte relação: <formula>formula see original document page 66</formula> Nmin é o número de regiões de energia mínima, e Te é o deslo- camento entre a posição do pulso de amplitude máxima no quadro ocultado por apagamento e a posição do pulso glótico no quadro correspondente do sinal sonoro codificado.
16. Método de acordo com a reivindicação 15, em que R(i) está em ordem crescente, de modo que as amostras são principalmente adicio- nadas/removidas na direção de um final do quadro ocultado por apagamen- to.
17. Método de acordo com a reivindicação 1, em que conduzir uma ocultação de apagamento de quadro em resposta aos parâmetros de ocultação/recuperação recebidos compreende, para os quadros apagados falados: construir uma parte periódica de um sinal de excitação no qua- dro ocultado por apagamento em resposta aos parâmetros de oculta- ção/recuperação recebidos; e construir uma parte inovadora randômica do sinal de excitação gerando randomicamente um sinal não periódico, inovador.
18. Método de acordo com a reivindicação 1, em que conduzir uma ocultação de apagamento de quadro em resposta aos parâmetros de ocultação/recuperação recebidos compreende, para os quadros apagados não-falados, construir uma parte inovadora randômica de um sinal de excita- ção gerando randomicamente um sinal não periódico, inovador.
19. Método de acordo com a reivindicação 1, em que os parâme- tros de ocultação/recuperação ainda incluem uma classificação de sinal.
20. Método de acordo com a reivindicação 19, em que a classifi- cação de sinal compreende classificar quadros sucessivos do sinal sonoro codificado como não-falado, transição não-falada, transição falada, falado, ou início.
21. Método de acordo com a reivindicação 20, em que a classifi- cação de um quadro perdido é estimada com base na classificação de um quadro futuro e um último quadro bem-recebido.
22. Método de acordo com a reivindicação 21, em que a classifi- cação de um quadro perdido é ajustada para falado se o quadro futuro for falado e o último quadro bem-récebido for início.
23. Método de acordo com a reivindicação 22, em que a classifi- cação de um quadro perdido é ajustada para transição não-falada se o qua- dro futuro for não-falado e o último quadro bem-recebido for falado.
24. Método de acordo com a reivindicação 1, em que: o sinal sonoro é um sinal de voz; a determinação, no codificador, de parâmetros de oculta- ção/recuperação inclui determinar as informações de fase e a classificação de sinal de quadros sucessivos do sinal sonoro codificado; conduzir uma ocultação de apagamento de quadro em resposta aos parâmetros de ocultação/recuperação compreende, quando um quadro de início é perdido o que é indicado pela presença de um quadro falado que segue um apagamento de quadro e um quadro não-falado antes do apaga- mento de quadro, reconstruir artificialmente o quadro de início perdido; e ressincronizar o quadro de início perdido, ocultado por apaga- mento em resposta às informações de fase com o quadro de início corres- pondente do sinal sonoro codificado.
25. Método de acordo com a reivindicação 24, em que reconstru- ir artificialmente o quadro de início perdido compreende reconstruir artificial- mente um último pulso glótico no quadro de início perdido como um pulso filtrado em passagem baixa.
26. Método de acordo com a reivindicação 24, ainda compreen- dendo escalar o quadro de início perdido reconstruído por um ganho.
27. Método para ocultar os apagamentos de quadro causados por quadros de um sinal sonoro codificado apagados durante a transmissão de um codificador para um decodificador e para a recuperação do decodifi- cador após os apagamentos de quadros, o método compreendendo, no de- codificador: estimar as informações de fase de cada quadro do sinal sonoro codificado que foi apagado durante a transmissão do codificador para o de- codificador; e conduzir uma ocultação de apagamento de quadro em resposta às informações de fase estimadas, em que a ocultação de apagamento de quadro compreende ressincronizar, em resposta às informações de fase es- timadas, cada quadro ocultado por apagamento com um quadro correspon- dente do sinal sonoro codificado no codificador.
28. Método de acordo com a reivindicação 27, em que estimar as informações de fase compreende estimar uma posição de um último pul- so glótico de cada quadro do sinal sonoro codificado que foi apagado.
29. Método de acordo com a reivindicação 28, em que estimar a posição do último pulso glótico de cada quadro do sinal sonoro codificado que foi apagado compreende: estimar um pulso glótico de um valor de passo passado; e interpolar o pulso glótico estimado com o valor de passo passa- do de modo a determinar os intervalos de passo estimados.
30. Método de acordo com a reivindicação 29, em que ressin- cronizar um quadro ocultado por apagamento com o quadro correspondente do sinal sonoro codificado compreende: decodificar a posição e o sinal do último pulso glótico do dito quadro correspondente do sinal sonoro codificado; alinhar o pulso de amplitude máxima no quadro ocultado por a- pagamento com o pulso glótico estimado.
31. Método de acordo com a reivindicação 30, em que alinhar o pulso de amplitude máxima no quadro ocultado por apagamento com o pulso glótico estimado compreende: calcular os ciclos de passo no quadro ocultado por apagamento; determinar um deslocamento entre os intervalos de passo esti- mados e os ciclos de passo no quadro ocultado por apagamento; e inserir/remover um número de amostras que correspondem ao deslocamento determinado no quadro ocultado por apagamento.
32. Método de acordo com a reivindicação 31, em que inse- rir/remover o número de amostras compreende: determinar pelo menos uma região de energia mínima no quadro ocultado por apagamento; e distribuir o número de amostras a serem inseridas/removidas ao redor da pelo menos uma região de energia mínima.
33. Método de acordo com a reivindicação 32, em que distribuir o número de amostras a serem inseridas/removidas ao redor da pelo menos uma região de energia mínima compreende distribuir o número de amostras ao redor da pelo menos uma região de energia mínima utilizando a seguinte relação: <formula>formula see original document page 69</formula> Nmin é o número de regiões de energia mínima, e Te é o deslo- camento entre os intervalos de passo estimados e os ciclos de passo no quadro ocultado por apagamento.
34. Método de acordo com a reivindicação 33, em que R(i) está em ordem crescente, de modo que as amostras são principalmente adicio- nadas/removidas na direção do final do quadro ocultado por apagamento.
35. Método de acordo com a reivindicação 27, que compreende atenuar um ganho de cada quadro ocultado por apagamento em um modo linear, do início para o final do quadro ocultado por apagamento.
36. Método de acordo com a reivindicação 35, em que o ganho de cada quadro ocultado por apagamento é atenuado até que α seja atingi- do, em que α é um fator para controlar uma velocidade convergente da re- cuperação de decodificador após o apagamento de quadro.
37. Método de acordo com a reivindicação 36, em que o fator α é dependente da estabilidade de um filtro de LP para os quadros não- falados.
38. Método de acordo com a reivindicação 37, em que o fator α ainda leva em consideração uma evolução de energia de segmentos fala- dos.
39. Dispositivo para ocultar os apagamentos de quadro causa- dos por quadros de um sinal sonoro codificado apagados durante a trans- missão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreen- dendo: no codificador, um meio para determinar os parâmetros de ocul- tação/recuperação que incluem pelo menos as informações de fase relativas aos quadros do sinal sonoro codificado; um meio para transmitir para o decodificador os parâmetros de ocultação/recuperação determinados no codificador; e no decodificador, um meio para conduzir a ocultação de apaga- mento de quadro em resposta aos parâmetros de ocultação/recuperação recebidos, em que o meio para conduzir a ocultação de apagamento de quadro compreende um meio para ressincronizar, em resposta às informa- ções de fase recebidas, os quadros ocultados por apagamento com os qua- dros correspondentes do sinal sonoro codificado no codificador.
40. Dispositivo para ocultar os apagamentos de quadro causa- dos por quadros de um sinal sonoro codificado apagados durante a trans- missão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreen- dendo: no codificador, um gerador de parâmetros de oculta- ção/recuperação que incluem pelo menos as informações de fase relativas aos quadros do sinal sonoro codificado; uma conexão de comunicação para transmitir para o decodifica- dor os parâmetros de ocultação/recuperação determinados no codificador; e no decodificador, um módulo de ocultação de apagamento de quadro suprido com os parâmetros de ocultação/recuperação recebidos e que compreende um sincronizador que responde às informações de fase recebidas para ressincronizar os quadros ocultados por apagamento com os quadros correspondentes do sinal sonoro codificado no codificador.
41. Dispositivo de acordo com a reivindicação 40, em que o ge- rador de parâmetros de ocultação/recuperação gera como as informações de fase uma posição de um pulso glótico em cada quadro do sinal sonoro codificado.
42. Dispositivo de acordo com a reivindicação 40, em que o ge- rador de parâmetros de ocultação/recuperação gera como as informações de fase uma posição e um sinal de um último pulso glótico em cada quadro do sinal sonoro codificado.
43. Dispositivo de acordo com a reivindicação 41, ainda compre- endendo um quantizador para quantizar a posição do pulso glótico antes da transmissão da posição do pulso glótico para o decodificador, através da conexão de comunicação.
44. Dispositivo de acordo com a reivindicação 42, ainda compre- endendo um quantizador para quantizar a posição e o sinal do último pulso glótico antes da transmissão da posição e do sinal do último pulso glótico para o decodificador, através da conexão de comunicação.
45. Dispositivo de acordo com a reivindicação 43, ainda compre- endendo um codificador da posição quantizada do pulso glótico em um qua- dro futuro do sinal sonoro codificado.
46. Dispositivo de acordo com a reivindicação 41, em que o ge- rador determina como a posição do pulso glótico uma posição de um pulso de amplitude máxima em cada quadro do sinal sonoro codificado.
47. Dispositivo de acordo com a reivindicação 42, em que o ge- rador determina como a posição e o sinal do último pulso glótico uma posi- ção e um sinal de um pulso de amplitude máxima em cada quadro do sinal sonoro codificado.
48. Dispositivo de acordo com a reivindicação 46, em que o ge- rador determina como as informações de fase um sinal do pulso glótico co- mo um sinal do pulso de amplitude máxima.
49. Dispositivo de acordo com a reivindicação 46, em que o sin- cronizador: determina em cada quadro ocultado por apagamento, uma posi- ção de um pulso de amplitude máxima mais próximo da posição do pulso glótico em um quadro correspondente do sinal sonoro codificado; determina um deslocamento entre a posição do pulso de ampli- tude máxima em cada quadro ocultado por apagamento e a posição do pul- so glótico no quadro correspondente do sinal sonoro codificado; e insere/remove um número de amostras que correspondem ao deslocamento determinado em cada quadro ocultado por apagamento de modo a alinhar a posição do pulso de amplitude máxima no quadro ocultado por apagamento com a posição do pulso glótico no quadro correspondente do sinal sonoro codificado.
50. Dispositivo de acordo com a reivindicação 42, em que o sin- cronizador: determina em cada quadro ocultado por apagamento, uma posi- ção de um pulso de amplitude máxima que tem um sinal similar ao sinal do último pulso glótico, mais próximo da posição do último pulso glótico em um quadro correspondente do sinal sonoro codificado; determina um deslocamento entre a posição do pulso de ampli- tude máxima em cada quadro ocultado por apagamento e a posição do últi- mo pulso glótico no quadro correspondente do sinal sonoro codificado; e insere/remove um número de amostras que correspondem ao deslocamento determinado em cada quadro ocultado por apagamento de modo a alinhar a posição do pulso de amplitude máxima no quadro ocultado por apagamento com a posição do último pulso glótico no quadro correspon- dente do sinal sonoro codificado.
51. Dispositivo de acordo com a reivindicação 49, em que o sin- cronizador ainda: determina pelo menos uma região de energia mínima em cada quadro ocultado por apagamento pela utilização de uma janela deslizante; e distribui o número de amostras a serem inseridas/removidas ao redor da pelo menos uma região de energia mínima.
52. Dispositivo de acordo com a reivindicação 51, em que o sin- cronizador utiliza a seguinte relação para distribuir o número de amostras a serem inseridas/removidas ao redor da pelo menos uma região de energia mínima: <formula>formula see original document page 73</formula> onde <formula>formula see original document page 73</formula> Nmin é o número de regiões de energia mínima, e Te é ò deslo- camento entre a posição do pulso de amplitude máxima no quadro ocultado por apagamento e a posição do pulso glótico no quadro correspondente do sinal sonoro codificado.
53. Dispositivo de acordo com a reivindicação 52, em que R(i) está em ordem crescente, de modo que as amostras são principalmente adi- cionadas/removidas na direção de um final do quadro ocultado por apaga- mento.
54. Dispositivo de acordo com a reivindicação 40, em que o mó- dulo de ocultação de apagamento de quadro suprido com os parâmetros de ocultação/recuperação recebidos compreende, para os quadros apagados falados: um gerador de uma parte periódica de um sinal de excitação em cada quadro ocultado por apagamento em resposta aos parâmetros de ocul- tação/recuperação recebidos; e um gerador randômico de uma parte não periódica, inovadora do sinal de excitação.
55. Dispositivo de acordo com a reivindicação 40, em que o mó- dulo de ocultação de apagamento de quadro suprido com os parâmetros de ocultação/recuperação recebidos compreende, para os quadros apagados não-falados, um gerador randômico de uma parte não periódica, inovadora de um sinal de excitação.
56. Dispositivo para ocultar os apagamentos de quadro causa- dos por quadros de um sinal sonoro codificado apagados durante a trans- missão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreen- dendo: um meio para estimar, no decodificador, as informações de fase de cada quadro do sinal sonoro codificado que foi apagado durante a trans- missão do codificador para o decodificador; e um meio para conduzir a ocultação de apagamento de quadro em resposta às informações de fase estimadas, o meio para conduzir a ocul- tação de apagamento de quadro compreendendo um meio para ressincroni- zar, em resposta às informações de fase estimadas, cada quadro ocultado por apagamento com um quadro correspondente do sinal sonoro codificado no codificador.
57. Dispositivo para ocultar os apagamentos de quadro causa- dos por quadros de um sinal sonoro codificado apagados durante a trans- missão de um codificador para um decodificador e para a recuperação do decodificador após os apagamentos de quadros, o dispositivo compreen- dendo: no decodificador, um estimador de informações de fase de cada quadro do sinal codificado que foi apagado durante a transmissão do codifi- cador para o decodificador; e um módulo de ocultação de apagamento suprido com as infor- mações de fase estimadas e que compreende um sincronizador o qual, em resposta às informações de fase estimadas, ressincroniza cada quadro ocul- tado por apagamento com um quadro correspondente do sinal sonoro codifi- cado no codificador.
58. Dispositivo de acordo com a reivindicação 57, em que o es- timador das informações de fase estima, de um valor de passo passado, uma posição e um sinal do último pulso glótico em cada quadro do sinal so- noro codificado, e interpola o pulso glótico estimado com o valor de passo passado de modo a determinar os intervalos de passo estimados.
59. Dispositivo de acordo com a reivindicação 58, em que o sin- cronizador: determina um pulso de amplitude máxima e ciclos de passo em cada quadro ocultado por apagamento; determina um deslocamento entre os ciclos de passo em cada quadro ocultado por apagamento e os intervalos de passo estimados no quadro correspondente do sinal sonoro codificado; e insere/remove um número de amostras que correspondem ao deslocamento determinado em cada quadro ocultado por apagamento de modo a alinhar o pulso de amplitude máxima no quadro ocultado por apa- gamento com o último pulso glótico estimado.
60. Dispositivo de acordo com a reivindicação 59, em que o sin- cronizador ainda: determina pelo menos uma região de energia mínima pela utili- zação de uma janela deslizante; e distribui o número de amostras ao redor da pelo menos uma re- gião de energia mínima.
61. Dispositivo de acordo com a reivindicação 60, em que o sin- cronizador utiliza a seguinte relação para distribuir o número de amostras ao redor de pelo menos uma região de energia mínima: <formula>formula see original document page 75</formula> onde <formula>formula see original document page 75</formula> Nmin é o número de regiões de energia mínima, e Te é o deslo- camento entre os ciclos de passo em cada quadro ocultado por apagamento e os intervalos de passo estimados no quadro correspondente do sinal sono- ro codificado.
62. Dispositivo de acordo com a reivindicação 61, em que R(i) está em ordem crescente, de modo que as amostras são principalmente adi- cionadas/removidas na direção de um final do quadro ocultado por apaga- mento.
63. Dispositivo de acordo com a reivindicação 58, ainda compre- endendo um atenuador para atenuar um ganho de cada quadro ocultado por apagamento, em um modo linear, de um início para um final do quadro ocul- tado por apagamento.
64. Dispositivo de acordo com a reivindicação 63, em que o ate- nuador atenua o ganho de cada quadro ocultado por apagamento até a, em que a é um fator para controlar uma velocidade convergente da recuperação de decodificador após o apagamento de quadro.
65. Dispositivo de acordo com a reivindicação 64, em que o fator α é dependente da estabilidade de um filtro de LP para os quadros não- falados.
66. Dispositivo de acordo com a reivindicação 65, em que o fator α ainda leva em consideração uma evolução de energia de segmentos fala- dos.
67. Método de acordo com a reivindicação 1, que compreende, quando as informações de fase não estão disponíveis no momento da ocul- tação de um quadro apagado, atualizar o conteúdo de um livro de códigos adaptável do decodificador com as informações de fase quando disponíveis antes de decodificar um próximo quadro recebido, não apagado.
68. Método de acordo com a reivindicação 1, em que: determinar os parâmetros de ocultação/recuperação compreen- de determinar como as informações de fase uma posição de um pulso glóti- co em cada quadro do sinal sonoro codificado; e atualizar o livro de códigos adaptável compreende ressincronizar o pulso glótico no livro de códigos adaptável.
69. Dispositivo de acordo com a reivindicação 40, em que o de- codificador atualiza, quando as informações de fase não estão disponíveis no momento da ocultação de um quadro apagado, o conteúdo de um livro de códigos adaptável do decodificador com as informações de fase quando dis- poníveis antes de decodificar um próximo quadro recebido, não apagado.
70. Dispositivo de acordo com a reivindicação 69, em que: o gerador de parâmetros de ocultação/recuperação determina como as informações de fase uma posição de um pulso glótico em cada quadro do sinal sonoro codificado; e o decodificador, para atualizar o livro de códigos adaptável, res- sincroniza o pulso glótico no livro de códigos adaptável.
BRPI0620838-0A 2005-12-28 2006-12-28 método e dispositivo para uma eficiente ocultação de apagamento de quadro em codecs de voz BRPI0620838A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US75418705P 2005-12-28 2005-12-28
US60/754,187 2005-12-28
PCT/CA2006/002146 WO2007073604A1 (en) 2005-12-28 2006-12-28 Method and device for efficient frame erasure concealment in speech codecs

Publications (1)

Publication Number Publication Date
BRPI0620838A2 true BRPI0620838A2 (pt) 2011-11-29

Family

ID=38217654

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0620838-0A BRPI0620838A2 (pt) 2005-12-28 2006-12-28 método e dispositivo para uma eficiente ocultação de apagamento de quadro em codecs de voz

Country Status (16)

Country Link
US (1) US8255207B2 (pt)
EP (1) EP1979895B1 (pt)
JP (1) JP5149198B2 (pt)
KR (1) KR20080080235A (pt)
CN (1) CN101379551A (pt)
AU (1) AU2006331305A1 (pt)
BR (1) BRPI0620838A2 (pt)
CA (1) CA2628510C (pt)
DK (1) DK1979895T3 (pt)
ES (1) ES2434947T3 (pt)
NO (1) NO20083167L (pt)
PL (1) PL1979895T3 (pt)
PT (1) PT1979895E (pt)
RU (1) RU2419891C2 (pt)
WO (1) WO2007073604A1 (pt)
ZA (1) ZA200805054B (pt)

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8370138B2 (en) * 2006-03-17 2013-02-05 Panasonic Corporation Scalable encoding device and scalable encoding method including quality improvement of a decoded signal
US9159333B2 (en) * 2006-06-21 2015-10-13 Samsung Electronics Co., Ltd. Method and apparatus for adaptively encoding and decoding high frequency band
EP2080194B1 (fr) * 2006-10-20 2011-12-07 France Telecom Attenuation du survoisement, notamment pour la generation d'une excitation aupres d'un decodeur, en absence d'information
KR101292771B1 (ko) * 2006-11-24 2013-08-16 삼성전자주식회사 오디오 신호의 오류은폐방법 및 장치
KR100862662B1 (ko) 2006-11-28 2008-10-10 삼성전자주식회사 프레임 오류 은닉 방법 및 장치, 이를 이용한 오디오 신호복호화 방법 및 장치
SG179433A1 (en) * 2007-03-02 2012-04-27 Panasonic Corp Encoding device and encoding method
JP5489711B2 (ja) * 2007-03-02 2014-05-14 パナソニック株式会社 音声符号化装置及び音声復号装置
WO2008151408A1 (en) * 2007-06-14 2008-12-18 Voiceage Corporation Device and method for frame erasure concealment in a pcm codec interoperable with the itu-t recommendation g.711
CN101325537B (zh) * 2007-06-15 2012-04-04 华为技术有限公司 一种丢帧隐藏的方法和设备
US8386246B2 (en) * 2007-06-27 2013-02-26 Broadcom Corporation Low-complexity frame erasure concealment
US8185388B2 (en) * 2007-07-30 2012-05-22 Huawei Technologies Co., Ltd. Apparatus for improving packet loss, frame erasure, or jitter concealment
JP2009063928A (ja) * 2007-09-07 2009-03-26 Fujitsu Ltd 補間方法、情報処理装置
KR101235830B1 (ko) * 2007-12-06 2013-02-21 한국전자통신연구원 음성코덱의 품질향상장치 및 그 방법
KR100998396B1 (ko) * 2008-03-20 2010-12-03 광주과학기술원 프레임 손실 은닉 방법, 프레임 손실 은닉 장치 및 음성송수신 장치
KR101228165B1 (ko) * 2008-06-13 2013-01-30 노키아 코포레이션 프레임 에러 은폐 방법, 장치 및 컴퓨터 판독가능한 저장 매체
WO2010000303A1 (en) * 2008-06-30 2010-01-07 Nokia Corporation Speech decoder with error concealment
DE102008042579B4 (de) 2008-10-02 2020-07-23 Robert Bosch Gmbh Verfahren zur Fehlerverdeckung bei fehlerhafter Übertragung von Sprachdaten
CA2681988C (en) * 2008-10-08 2016-01-12 Research In Motion Limited Method and system for supplemental channel request messages in a wireless network
US8706479B2 (en) * 2008-11-14 2014-04-22 Broadcom Corporation Packet loss concealment for sub-band codecs
KR20110001130A (ko) * 2009-06-29 2011-01-06 삼성전자주식회사 가중 선형 예측 변환을 이용한 오디오 신호 부호화 및 복호화 장치 및 그 방법
CN101958119B (zh) * 2009-07-16 2012-02-29 中兴通讯股份有限公司 一种改进的离散余弦变换域音频丢帧补偿器和补偿方法
US9269366B2 (en) * 2009-08-03 2016-02-23 Broadcom Corporation Hybrid instantaneous/differential pitch period coding
US9058818B2 (en) * 2009-10-22 2015-06-16 Broadcom Corporation User attribute derivation and update for network/peer assisted speech coding
US20110196673A1 (en) * 2010-02-11 2011-08-11 Qualcomm Incorporated Concealing lost packets in a sub-band coding decoder
KR101826331B1 (ko) 2010-09-15 2018-03-22 삼성전자주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
WO2012044066A1 (ko) * 2010-09-28 2012-04-05 한국전자통신연구원 쉐이핑 함수를 이용한 오디오 신호 디코딩 방법 및 장치
KR20120032444A (ko) 2010-09-28 2012-04-05 한국전자통신연구원 적응 코드북 업데이트를 이용한 오디오 신호 디코딩 방법 및 장치
WO2012044067A1 (ko) * 2010-09-28 2012-04-05 한국전자통신연구원 적응 코드북 업데이트를 이용한 오디오 신호 디코딩 방법 및 장치
US8924200B2 (en) * 2010-10-15 2014-12-30 Motorola Mobility Llc Audio signal bandwidth extension in CELP-based speech coder
US8868432B2 (en) * 2010-10-15 2014-10-21 Motorola Mobility Llc Audio signal bandwidth extension in CELP-based speech coder
US9026813B2 (en) 2010-11-22 2015-05-05 Qualcomm Incorporated Establishing a power charging association on a powerline network
US9767822B2 (en) * 2011-02-07 2017-09-19 Qualcomm Incorporated Devices for encoding and decoding a watermarked signal
SG192745A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Noise generation in audio codecs
MX2013009304A (es) 2011-02-14 2013-10-03 Fraunhofer Ges Forschung Aparato y metodo para codificar una porcion de una señal de audio utilizando deteccion de un transiente y resultado de calidad.
CA2827000C (en) 2011-02-14 2016-04-05 Jeremie Lecomte Apparatus and method for error concealment in low-delay unified speech and audio coding (usac)
ES2529025T3 (es) 2011-02-14 2015-02-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para procesar una señal de audio decodificada en un dominio espectral
CA2827335C (en) 2011-02-14 2016-08-30 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Audio codec using noise synthesis during inactive phases
TWI488177B (zh) 2011-02-14 2015-06-11 Fraunhofer Ges Forschung 使用頻譜域雜訊整形之基於線性預測的編碼方案
ES2639646T3 (es) 2011-02-14 2017-10-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación y decodificación de posiciones de impulso de pistas de una señal de audio
SG192721A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion
MY159444A (en) 2011-02-14 2017-01-13 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V Encoding and decoding of pulse positions of tracks of an audio signal
SG185519A1 (en) 2011-02-14 2012-12-28 Fraunhofer Ges Forschung Information signal representation using lapped transform
FR2977969A1 (fr) * 2011-07-12 2013-01-18 France Telecom Adaptation de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee
US9021278B2 (en) * 2011-08-10 2015-04-28 Qualcomm Incorporated Network association of communication devices based on attenuation information
JP6265903B2 (ja) * 2011-10-19 2018-01-24 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. 信号雑音減衰
EP2774145B1 (en) 2011-11-03 2020-06-17 VoiceAge EVS LLC Improving non-speech content for low rate celp decoder
EP2784777A4 (en) * 2011-11-22 2015-07-01 Pioneer Corp AUDIO SIGNAL CORRECTION DEVICE AND AUDIO SIGNAL CORRECTION METHOD
US8909539B2 (en) * 2011-12-07 2014-12-09 Gwangju Institute Of Science And Technology Method and device for extending bandwidth of speech signal
PT2795613T (pt) * 2011-12-21 2018-01-16 Huawei Tech Co Ltd Deteção e codificação de diferencial de altura de som muito curto
US9047863B2 (en) * 2012-01-12 2015-06-02 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for criticality threshold control
US9985855B2 (en) * 2012-06-28 2018-05-29 Dolby Laboratories Licensing Corporation Call quality estimation by lost packet classification
CN103714821A (zh) 2012-09-28 2014-04-09 杜比实验室特许公司 基于位置的混合域数据包丢失隐藏
CN103888630A (zh) * 2012-12-20 2014-06-25 杜比实验室特许公司 用于控制声学回声消除的方法和音频处理装置
PL3098811T3 (pl) * 2013-02-13 2019-04-30 Ericsson Telefon Ab L M Ukrywanie błędu ramki
US9842598B2 (en) 2013-02-21 2017-12-12 Qualcomm Incorporated Systems and methods for mitigating potential frame instability
KR102148407B1 (ko) * 2013-02-27 2020-08-27 한국전자통신연구원 소스 필터를 이용한 주파수 스펙트럼 처리 장치 및 방법
EP2965315B1 (en) 2013-03-04 2019-04-24 Voiceage Evs Llc Device and method for reducing quantization noise in a time-domain decoder
US9437203B2 (en) * 2013-03-07 2016-09-06 QoSound, Inc. Error concealment for speech decoder
FR3004876A1 (fr) * 2013-04-18 2014-10-24 France Telecom Correction de perte de trame par injection de bruit pondere.
JP6305694B2 (ja) * 2013-05-31 2018-04-04 クラリオン株式会社 信号処理装置及び信号処理方法
EP3007374B1 (en) 2013-06-05 2018-08-08 LG Electronics Inc. Method and apparatus for transmitting channel state information in wireless communication system
KR101788484B1 (ko) 2013-06-21 2017-10-19 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. Tcx ltp를 이용하여 붕괴되거나 붕괴되지 않은 수신된 프레임들의 재구성을 갖는 오디오 디코딩
CN105453173B (zh) 2013-06-21 2019-08-06 弗朗霍夫应用科学研究促进协会 利用改进的脉冲再同步化的似acelp隐藏中的自适应码本的改进隐藏的装置及方法
SG11201510463WA (en) * 2013-06-21 2016-01-28 Fraunhofer Ges Forschung Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pitch lag estimation
MY169132A (en) * 2013-06-21 2019-02-18 Fraunhofer Ges Forschung Method and apparatus for obtaining spectrum coefficients for a replacement frame of an audio signal, audio decoder, audio receiver and system for transmitting audio signals
CN104301064B (zh) * 2013-07-16 2018-05-04 华为技术有限公司 处理丢失帧的方法和解码器
EP2830065A1 (en) * 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding an encoded audio signal using a cross-over filter around a transition frequency
US9570093B2 (en) * 2013-09-09 2017-02-14 Huawei Technologies Co., Ltd. Unvoiced/voiced decision for speech processing
JP6306177B2 (ja) * 2013-10-31 2018-04-04 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 時間ドメイン励振信号を修正するエラーコンシールメントを用いて、復号化されたオーディオ情報を提供する、オーディオデコーダおよび復号化されたオーディオ情報を提供する方法
PT3285255T (pt) 2013-10-31 2019-08-02 Fraunhofer Ges Forschung Descodificador de áudio e método para fornecer uma informação de áudio descodificada utilizando uma ocultação de erro baseada num sinal de excitação no domínio de tempo
US9437211B1 (en) * 2013-11-18 2016-09-06 QoSound, Inc. Adaptive delay for enhanced speech processing
CN104751849B (zh) * 2013-12-31 2017-04-19 华为技术有限公司 语音频码流的解码方法及装置
CN107369453B (zh) 2014-03-21 2021-04-20 华为技术有限公司 语音频码流的解码方法及装置
FR3020732A1 (fr) * 2014-04-30 2015-11-06 Orange Correction de perte de trame perfectionnee avec information de voisement
CN106683681B (zh) 2014-06-25 2020-09-25 华为技术有限公司 处理丢失帧的方法和装置
JP6170575B2 (ja) * 2014-07-28 2017-07-26 テレフオンアクチーボラゲット エルエム エリクソン(パブル) ピラミッドベクトル量子化器形状サーチ
TWI602172B (zh) * 2014-08-27 2017-10-11 弗勞恩霍夫爾協會 使用參數以加強隱蔽之用於編碼及解碼音訊內容的編碼器、解碼器及方法
EP3230980B1 (en) 2014-12-09 2018-11-28 Dolby International AB Mdct-domain error concealment
DE102016101023A1 (de) * 2015-01-22 2016-07-28 Sennheiser Electronic Gmbh & Co. Kg Digitales Drahtlos-Audioübertragungssystem
EP3057097B1 (en) * 2015-02-11 2017-09-27 Nxp B.V. Time zero convergence single microphone noise reduction
US9830921B2 (en) * 2015-08-17 2017-11-28 Qualcomm Incorporated High-band target signal control
JP6797187B2 (ja) 2015-08-25 2020-12-09 ドルビー ラボラトリーズ ライセンシング コーポレイション オーディオ・デコーダおよびデコード方法
US9894687B2 (en) 2015-11-20 2018-02-13 Hughes Network Systems, Llc Methods and apparatuses for providing random access communication
WO2017129665A1 (en) * 2016-01-29 2017-08-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for improving a transition from a concealed audio signal portion to a succeeding audio signal portion of an audio signal
WO2017129270A1 (en) 2016-01-29 2017-08-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for improving a transition from a concealed audio signal portion to a succeeding audio signal portion of an audio signal
CN108011686B (zh) * 2016-10-31 2020-07-14 腾讯科技(深圳)有限公司 信息编码帧丢失恢复方法和装置
KR102332153B1 (ko) 2017-05-18 2021-11-26 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 네트워크 디바이스 관리
CN109496333A (zh) * 2017-06-26 2019-03-19 华为技术有限公司 一种丢帧补偿方法及设备
EP3483882A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Controlling bandwidth in encoders and/or decoders
EP3483883A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio coding and decoding with selective postfiltering
EP3483878A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder supporting a set of different loss concealment tools
EP3483879A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
WO2019091576A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
EP3483886A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Selecting pitch lag
EP3483884A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Signal filtering
WO2019091573A1 (en) 2017-11-10 2019-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters
EP3483880A1 (en) 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Temporal noise shaping
CN111064547A (zh) * 2019-12-30 2020-04-24 华南理工大学 一种基于自适应频率选择的抗干扰隐蔽信道通信方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4539684A (en) * 1983-01-07 1985-09-03 Motorola, Inc. Automatic frame synchronization recovery utilizing a sequential decoder
CA2010830C (en) 1990-02-23 1996-06-25 Jean-Pierre Adoul Dynamic codebook for efficient speech coding based on algebraic codes
US5701392A (en) 1990-02-23 1997-12-23 Universite De Sherbrooke Depth-first algebraic-codebook search for fast coding of speech
US5754976A (en) 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
WO1995028046A1 (en) * 1994-04-08 1995-10-19 Echelon Corporation Method and apparatus for robust communications based upon angular modulation
US5732389A (en) 1995-06-07 1998-03-24 Lucent Technologies Inc. Voiced/unvoiced classification of speech for excitation codebook selection in celp speech decoding during frame erasures
US6680987B1 (en) * 1999-08-10 2004-01-20 Hughes Electronics Corporation Fading communications channel estimation and compensation
US6757654B1 (en) 2000-05-11 2004-06-29 Telefonaktiebolaget Lm Ericsson Forward error correction in speech coding
US20030103582A1 (en) * 2001-12-04 2003-06-05 Linsky Stuart T. Selective reed-solomon error correction decoders in digital communication systems
JP3946087B2 (ja) * 2002-05-23 2007-07-18 三菱電機株式会社 通信システム、受信機および通信方法
CA2388439A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
US7215705B2 (en) * 2003-03-17 2007-05-08 Intel Corporation Reducing phase noise in phase-encoded communications signals

Also Published As

Publication number Publication date
WO2007073604A8 (en) 2007-12-21
JP2009522588A (ja) 2009-06-11
EP1979895A1 (en) 2008-10-15
RU2419891C2 (ru) 2011-05-27
AU2006331305A1 (en) 2007-07-05
PL1979895T3 (pl) 2014-01-31
CN101379551A (zh) 2009-03-04
RU2008130674A (ru) 2010-02-10
ES2434947T3 (es) 2013-12-18
US8255207B2 (en) 2012-08-28
EP1979895A4 (en) 2009-11-11
KR20080080235A (ko) 2008-09-02
JP5149198B2 (ja) 2013-02-20
NO20083167L (no) 2008-09-26
CA2628510C (en) 2015-02-24
ZA200805054B (en) 2009-03-25
PT1979895E (pt) 2013-11-19
CA2628510A1 (en) 2007-07-05
WO2007073604A1 (en) 2007-07-05
EP1979895B1 (en) 2013-10-09
DK1979895T3 (da) 2013-11-18
US20110125505A1 (en) 2011-05-26

Similar Documents

Publication Publication Date Title
BRPI0620838A2 (pt) método e dispositivo para uma eficiente ocultação de apagamento de quadro em codecs de voz
KR101032119B1 (ko) 선형 예측 기반 음성 코덱에서 효율적인 프레임 소거 은폐방법 및 장치
JP6306177B2 (ja) 時間ドメイン励振信号を修正するエラーコンシールメントを用いて、復号化されたオーディオ情報を提供する、オーディオデコーダおよび復号化されたオーディオ情報を提供する方法
JP6306175B2 (ja) 時間ドメイン励振信号に基づくエラーコンシールメントを用いて、復号化されたオーディオ情報を提供するオーディオデコーダおよび復号化されたオーディオ情報を提供する方法
KR100388388B1 (ko) 재생위상정보를사용하는음성합성방법및장치
PT1864282T (pt) Sistemas, métodos, e aparelho para codificação de fala em banda larga
Chibani Increasing the robustness of CELP speech codecs against packet losses.
MX2008008477A (es) Metodo y dispositivo para ocultamiento eficiente de borrado de cuadros en codec de voz

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE AS 4A E 5A ANUIDADES.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2161 DE 05/06/2012.