BR122021002034B1 - Codificador que utiliza cancelamento de serrilhado futuro - Google Patents

Codificador que utiliza cancelamento de serrilhado futuro Download PDF

Info

Publication number
BR122021002034B1
BR122021002034B1 BR122021002034-5A BR122021002034A BR122021002034B1 BR 122021002034 B1 BR122021002034 B1 BR 122021002034B1 BR 122021002034 A BR122021002034 A BR 122021002034A BR 122021002034 B1 BR122021002034 B1 BR 122021002034B1
Authority
BR
Brazil
Prior art keywords
frame
aliasing
future
data
current
Prior art date
Application number
BR122021002034-5A
Other languages
English (en)
Inventor
Lecomte Jeremie
Patrick Warmbold
Bayer Stefan
Original Assignee
Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E. V.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E. V. filed Critical Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E. V.
Publication of BR122021002034B1 publication Critical patent/BR122021002034B1/pt

Links

Images

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/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
    • 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/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS 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/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • 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
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

codec suportando comutação entre modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e modo de codificação de domínio de tempo é tornado menos passível de perda de moldura pela adição de uma porção de sintaxe adicional às molduras, dependendo do que o analisador do decodificador pode selecionar entre uma primeira ação de expectativa da moldura atual para compreender e, assim, ler de dados de cancelamento de serrilhado futuro a partir da moldura atual, e uma segunda ação de não expectativa da moldura atual para compreender e, assim, não ler os dados de cancelamento de serrilhado futuro a partir da moldura atual. em outras palavras, embora um pouco de eficiência de codificação seja perdida devido à provisão da nova porção de sintaxe, é meramente a nova porção de sintaxe que provê a capacidade de usar o codec no caso de um canal de comunicação com perda de moldura. sem a nova porção de sintaxe, o decodificador não seria capaz de decodificar qualquer porção de corrente de dados após uma perda e colidiria na tentativa de retomar a análise. dessa maneira, em um ambiente propício a erro, a eficiência de codificação é impedida de desaparecer pela introdução da nova porção de sintaxe.

Description

RELATÓRIO DESCRITIVO
A presente invenção refere-se a um codec suportando um modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e um modo de codificação de domínio de tempo, assim como cancelamento de serrilhado futuro para comutação entre ambos os modos.
É favorável misturar modos de codificação diferentes, de modo a codificar sinais de áudio gerais representando uma mistura de sinais de áudio de diferentes tipos, tais como fala, música ou similares. Os modos de codificação individuais podem ser adaptados para tipos de áudio específicos, e, dessa maneira, um codificador de áudio de modos múltiplos pode tirar vantagem da alteração do modo de codificação em relação ao tempo correspondente para mudar o tipo de conteúdo de áudio. Em outras palavras, o codificador de áudio de modos múltiplos pode decidir, por exemplo, codificar porções do sinal de áudio com conteúdo de fala, usando um modo de codificação especialmente dedicado para codificação de fala, e usar outro modo de codificação de modo a codificar diferentes porções do conteúdo de áudio representando conteúdo diferente de fala, tal como música. Modos de codificação de domínio de tempo, tais como modos de codificação de previsão linear de excitação de livro de código, tendem a ser mais adequados para conteúdos de codificação de fala, enquanto modos de codificação de transformada tendem a superar modos de codificação de domínio de tempo, considerando a codificação de música, por exemplo.
Existem soluções para se dirigir ao problema de lidar com a coexistência de diferentes tipos de áudio dentro de um sinal de áudio. O USAC surgido recentemente, por exemplo, sugere comutação entre um modo de codificação de domínio de frequência grandemente atendendo ao padrão AAC, e dois modos de previsão linear adicionais similares a modos de sub-moldura do AMR-WB mais padrão, isto é, uma variante baseada em MDCT (Modified Discrete Cosine Transformation) do modo TCX (TCX = excitação de transformada codificada) e um modo ACELP (previsão linear de excitação de livro de código adaptativo). Para maior precisão, no padrão AMR-WB+, TCX tem base em uma transformada DFT, mas no USAC TCX tem uma base de transformada de MDCT. Certa estrutura de moldura é usada de modo a comutar entre domínio de codificação FD similar ao AAC e o domínio de previsão linear similar a AMR-WB+. O próprio padrão AMR-WB+ usa sua própria estrutura de moldura formando uma estrutura de sub-moldura em relação ao padrão USAC. O padrão AMR-WB+ permite certa configuração de subdivisão das molduras AMR-WB+ em molduras TCX e/ou ACELP menores. Similarmente, o padrão AAC usa uma estrutura de moldura base, mas permite o uso de diferentes comprimentos de janela, de modo a codificar por transformada o conteúdo de moldura. Por exemplo, tanto uma janela longa quanto um comprimento de transformada longa associado podem ser usados, ou oito janelas curtas com transformações associadas de comprimento menor. MDCT causa serrilhamento. Isto é, dessa maneira, verdadeiro, nos limites de molduras TXC e FD. Em outras palavras, apenas como qualquer codificador de domínio de freqüência usando MDCT, serrilhamento ocorre nas regiões de sobreposição de janela, que é cancelado pela ajuda das molduras vizinhas. Isto é, para quaisquer transições entre duas molduras FD ou entre duas molduras TCX (MDCT) ou transição entre tanto FD para TCX quanto TCX para FD, existe uma cancelamento de serrilhado implícito pelo procedimento de sobreposição/adição dentro da reconstrução no lado de decodificação. Então, não existe mais serrilhamento após a adição de sobreposição. Entretanto, no caso de transições com ACELP, não existe cancelamento de serrilhado inerente. Então, uma nova ferramenta tem que ser introduzida que pode ser denominada FAC (cancelamento de serrilhado futuro). FAC é para cancelar o serrilhamento vindo das molduras vizinhas se elas forem diferentes de ACELP.
Em outras palavras, problemas de cancelamento de serrilhado ocorrem sempre que transições entre modo de codificação de transformada e modo de codificação de domínio de tempo, tal como ACELP, ocorrem. De modo a executar a transformação do domínio de tempo para o domínio espectral tão efetivamente quanto possível, codificação de transformada de cancelamento de serrilhado de domínio de tempo é usada, tal como MDCT, isto é, um modo de codificação usando uma transformada de sobreposição onde porções de janela de sobreposição de um sinal são transformadas usando uma transformada de acordo com a qual o número de coeficientes de transformada por porção é menor que o número de amostras por porção, de modo que serrilhamento ocorre contanto que as porções individuais estejam envolvidas, com este serrilhamento sendo cancelado pelo cancelamento de serrilhado de domínio de tempo, isto é, pela adição das porções de serrilhado de sobreposição de porções de sinal re-transformado vizinhas. MDCT é esta transformada de cancelamento de serrilhado de domínio de tempo. De forma desvantajosa, o TDAC (cancelamento de serrilhado de domínio de tempo) não está disponível em transições entre o modo de codificação TC e o modo de codificação e domínio de tempo.
De modo a resolver este problema, cancelamento de serrilhado futuro (FAC) pode ser usado de acordo com o que os sinais de codificador dentro dos dados FAC da corrente de dados adicional dentro de uma moldura atual sempre que uma mudança no modo de codificação da codificação de transformada para codificação de domínio de tempo ocorrer. Isto, entretanto, necessita do decodificador para comparar os modos de codificação de molduras consecutivas de modo a verificar se a moldura atualmente decodificada compreende dados FAC dentro de sua sintaxe ou não. Isto, por sua vez, significa que podem existir molduras para as quais o decodificador pode não estar certo se o mesmo tem que ler ou analisar dados FAC da moldura atual ou não. Em outras palavras, no caso em que uma ou mais molduras foram perdidas durante a transmissão, o decodificador não conhece as molduras imediatamente sucessivas (recebidas) quanto a uma mudança de modo de codificação ter ocorrido ou não, e quanto ao fato da corrente de bit dos dados codificados da moldura atual conter dados FAC ou não. Consequentemente, o decodificador tem que descartar a moldura atual e esperar pela próxima moldura. Alternativamente, o decodificador pode analisar a moldura atual pela execução de dois testes de decodificação, um pressupondo que dados FAC estão presentes, e outro pressupondo que dados FAC não estão presentes, decisão subseqüente caso uma dentre ambas as alternativas venha a falhar. O processo de decodificação faria, muito provavelmente, o decodificador colidir em uma das duas condições. Isto é, na realidade, a última possibilidade não é uma abordagem plausível. O decodificador deveria, a qualquer momento, saber como interpretar os dados e não fundamentar-se em sua própria especulação sobre como tratar os dados.
Consequentemente, é um objetivo da presente invenção prover um codificador-decodificador (“codec”) que é mais robusto a erro ou robusto a perda de moldura, entretanto, com comutação de suporte entre modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e modo de codificação de domínio de tempo.
Este objetivo é atingido pelo assunto de qualquer uma das reivindicações independentes anexadas aqui.
A presente invenção é baseada na descoberta de que uma comutação suportando codec mais robusto a erro ou robusto a perda de moldura entre modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e modo de codificação de domínio de tempo, é atingível se uma porção de sintaxe adicional é adicionada às molduras, dependendo da qual o analisador do decodificador pode selecionar entre uma primeira ação de expectativa da moldura atual para compreender, e assim ler dados de cancelamento de serrilhado futuro da moldura atual e uma segunda ação de não expectativa da moldura atual para compreender, e assim não ler dados de cancelamento de serrilhado futuro da moldura atual. Em outras palavras, embora um bit de eficiência de codificação seja perdido devido à provisão da segunda porção de sintaxe, é meramente a segunda porção de sintaxe que provê a capacidade de usar o codec no caso de um canal de comunicação com perda de moldura. Sem a segunda porção de sintaxe, o decodificador não seria capaz de decodificar qualquer porção de corrente de dados após uma perda e colidiria na tentativa de retomar a análise. Dessa maneira, em um ambiente propício ao erro, a eficiência de codificação é impedida de ser eliminada pela introdução da segunda porção de sintaxe.
Realizações preferidas adicionais da presente invenção estão sujeitas às reivindicações dependentes. Adicionalmente, realizações preferidas da presente invenção são descritas abaixo em maiores detalhes com relação às figuras. Em especial A Figura 1 mostra um diagrama de bloco esquematizado de um decodificador de acordo com uma realização; A Figura 2 mostra um diagrama de bloco esquematizado de um codificador de acordo com uma realização; A Figura 3 mostra um diagrama de bloco de uma implementação possível do reconstrutor da Figura 2; A Figura 4 mostra um diagrama de bloco de uma implementação possível do módulo de decodificação FD da Figura 3; A Figura 5 mostra um diagrama de bloco de implementação possível dos módulos de decodificação LPD da Figura 3; A Figura 6 mostra um diagrama esquematizado ilustrando o procedimento de codificação, de modo a gerar dados FAC de acordo com uma realização; A Figura 7 mostra um diagrama esquematizado da re-transformada da transformada TDAC de acordo com uma realização; As Figuras 8, 9 mostram diagramas de bloco para ilustrar um delineamento de caminho dos dados FAC no codificador de um processamento adicional no codificador, de modo a testar a mudança do modo de codificação em um sentido de otimização. As Figuras 10 e 11 mostram diagramas de bloco do manuseio do decodificador, de modo a alcançar as figuras 8 e 9 dos dados FAC da corrente de dados; A Figura 12 mostra um diagrama esquematizado da reconstrução baseada em FAC, o lado de decodificação através das molduras limites de modo de codificação diferente; As Figuras 13 e 14 mostram esquematicamente o processamento executado no manuseador de transição da figura 3, de modo a executar a reconstrução da figura 12; As Figuras 15 a 19 mostram porções de uma estrutura de sintaxe de acordo com uma realização; e As Figuras 20 a 22 mostram porções de uma estrutura de sintaxe de acordo com outra realização. A Figura 1 mostra um decodificador 10 de acordo com uma realização da presente invenção. O decodificador 10 para decodificar uma corrente de dados compreendendo uma seqüência de molduras 14a, 14b e 14c nas quais segmentos de tempo 16a-c de um sinal de informação 18 são codificados, respectivamente. Conforme ilustrado na Figura 1, os segmentos de tempo 16a a 16c são segmentos não sobrepostos que diretamente limitam-se entre si no tempo e são seqüencialmente ordenados no tempo. Conforme ilustrado na Figura 1, os segmentos de tempo 16a a 16c podem ser de tamanhos iguais, mas realizações alternativas são também plausíveis. Cada um dos segmentos de tempo 16a a 16c é codificado em uma moldura respectiva dentre as molduras 14a a 14c. Em outras palavras, cada segmento de tempo 16a a 16c é unicamente associado com uma das molduras 14a a 14c que, por sua vez, têm também uma ordem definida entre elas, que segue a ordem dos segmentos 16a a 16c que são codificados nas molduras 14a a 14c, respectivamente. Embora a Figura 1 sugira que cada moldura 14a a 14c é de comprimento igual medido, por exemplo, em bits codificados, isto não é, obviamente, obrigatório. Ao invés disso, o comprimento de molduras 14a a 14c pode variar de acordo com a complexidade do segmento de tempo 16a a 16c com o qual a moldura respectiva 14a a 14c está associada.
Para facilidade de explanação das realizações descritas abaixo, é presumido que o sinal de informação 18 é um sinal de áudio. Entretanto, deveria ser observado que o sinal de informação poderia também ser qualquer outro sinal, tal como uma saída de sinal por um sensor físico ou similar, tal como um sensor óptico ou similar. Em especial, sinal 18 pode ser amostrado em certa taxa de amostragem e os segmentos de tempo 16a a 16c podem cobrir porções imediatamente consecutivas deste sinal 18 igual no tempo e número de amostras, respectivamente. Um número de amostras por segmento de tempo 16a a 16c pode, por exemplo, ser de 1024 amostras.
O decodificador 10 compreende um analisador 20 e um reconstrutor 22. O analisador 20 é configurado para analisar a corrente de dados 12 e, na análise da corrente de dados 12, ler uma primeira porção de sintaxe 24 e uma segunda porção de sintaxe 26 de uma moldura atual 14b, isto é, uma moldura atualmente a ser decodificado. Na figura 1, é exemplificativamente pressuposto que a moldura 14b, isto é, a moldura atualmente a ser decodificada. Na figura 1, é exemplificativamente pressuposto que a moldura 14b é a moldura atualmente a ser decodificada enquanto a moldura 14a é a moldura que foi decodificada imediatamente antes dela. Cada moldura 14a a 14c tem uma primeira porção de sintaxe e uma segunda porção de sintaxe incorporada na mesma com uma significância ou significado da mesma sendo descrito abaixo. Na figura 1, a primeira porção de sintaxe dentro das molduras 14a a 14c é indicado com uma caixa tendo um “1” na mesma e a segunda porção de sintaxe indicada com uma caixa intitulada “2”.
Naturalmente, cada moldura 14a a 14c também tem informação adicional incorporado na mesma que é para representar o segmento de tempo associado 16a a 16c de uma maneira descrita em maiores detalhes abaixo. Esta informação é indicada na figura 1 por um bloco hachurado onde um sinal de referência 28 é usado para a informação adicional da moldura atual 14b. O analisador 20 é configurado para, na análise da corrente de dados 12, também ler a informação 28 da moldura atual 14b.
O reconstrutor 22 é configurado para reconstruir o segmento de tempo atual 16b do sinal de informação 18 associado com a moldura atual 14b baseada na informação adicional 28 usando um modo selecionado dentre o modo de decodificação de transformada de cancelamento de serrilhado de domínio de tempo e um modo de decodificação de domínio de tempo. A seleção depende do primeiro elemento de sintaxe 24. Ambos os modos de decodificação diferem entre si pela presença ou ausência de qualquer transição de domínio espectral de volta ao domínio de tempo usando uma re- transformada. A re-transformada (com sua transformada correspondente) introduz serrilhamento, contanto que os segmentos de tempo individuais sejam relacionados, cujo serrilhamento é, entretanto, compensável por um cancelamento de serrilhado de domínio de tempo, contanto que as transições nos limites entre molduras consecutivas codificadas no modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo, sejam relacionadas. O modo de decodificação de domínio de tempo não necessita qualquer re-transformada. Ao invés disso, a decodificação permanece no domínio de tempo. Dessa maneira, de forma geral, o modo de decodificação de transformada de cancelamento de serrilhado de domínio de tempo do reconstrutor 22 envolve uma re-transformada sendo executada pelo reconstrutor 22. Esta re-transformada mapeia um primeiro número de coeficientes de transformada conforme obtido a partir da informação 28 da moldura atual 14b (sendo do modo de decodificação de transformada TDAC) no segmento de sinal de re-transformada tendo um comprimento de amostra de um segundo número de amostras que é maior que o primeiro número, portanto causando serrilhamento. O modo de decodificação de domínio de tempo, por sua vez, pode envolver um modo de decodificação de previsão linear de acordo com o qual a excitação e coeficientes de previsão linear são reconstruídos da informação 28 da moldura atual que, neste caso, é do modo de codificação de domínio de tempo.
Dessa maneira, como ficou claro a partir da discussão acima, no modo de decodificação de transformada de cancelamento de serrilhado de domínio de tempo, o reconstrutor 22 obtém da informação 28 um segmento de sinal para reconstruir o sinal de informação no respectivo segmento de tempo 16b por uma re-transformada. O segmento de sinal re-transformado é mais longo que o segmento de tempo atual 16b realmente é, e participa na reconstrução do sinal de informação 18 dentro de uma porção de tempo que inclui e estende-se além do segmento de tempo 16b. A Figura 1 ilustra uma janela de transformada 32 usada na transformação do sinal original ou em ambos, a transformação e re- transformação. Como pode ser observado, a janela 32 pode compreender a porção zero 321 no início da mesma e uma porção zero 322 na borda de fuga da mesma, e porções de serrilhamento 323 e 324 em uma borda inicial e de fuga do segmento de tempo atual 16b onde uma porção não-serrilhamento 325, onde a janela 32 é um, pode ser posicionada entre ambas as porções de serrilhamento 323 e 324. As porções zero 321 e 322 são opcionais. É também possível que meramente uma dentre as porções zero 321 e 322 esteja presente. Conforme é mostrado na Figura 1, a função da janela pode ser monotonicamente aumentar/diminuir dentro das porções de serrilhamento. Serrilhamento ocorre dentro das porções de serrilhamento 323 e 324, onde a janela 32 continuamente conduz de zero para um ou inversamente. O serrilhamento não é crítico, contanto que os segmentos de tempo anterior e sucessivo sejam codificados no modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo, também. Esta possibilidade é ilustrada na figura 1 com relação ao segmento de tempo 16c. Uma linha pontilhada ilustra uma janela de transformada respectiva 32’ para segmento de tempo 16c, a porção de serrilhamento que coincide com a porção de serrilhamento 324 do segmento de tempo atual 16b. Adicionar os sinais de segmento re-transformado de segmentos de tempo 16b e 16c pelo reconstrutor 22 elimina o serrilhamento de ambos os segmentos de sinal re-transformado em relação um ao outro.
Entretanto, nos casos onde a moldura anterior ou subseqüente 14a ou 14c é codificada no modo de codificação de domínio de tempo, uma transição entre diferentes modos de codificação resulta na borda inicial ou de fuga do segmento de tempo atual 16b e, de modo a responder pelo serrilhamento respectivo, a corrente de dados 12 compreende dados de cancelamento de serrilhado futuro dentro da moldura respectiva imediatamente após a transição para permitir ao decodificador 10 compensar o serrilhamento ocorrendo nesta transição respectiva. Por exemplo, pode ocorrer que a moldura atual 14b seja do modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo, mas o decodificador 10 não saiba se a moldura anterior 14a era do modo de codificação de domínio de tempo. Por exemplo, a moldura 14a pode ter se perdido durante a transmissão e o decodificador 10 não tem acesso a mesma, conseqüentemente. Entretanto, dependendo do modo de codificação da moldura 14a, a moldura atual 14b compreende dados de cancelamento de serrilhado futuro de modo a compensar pela ocorrência de serrilhamento na porção de serrilhado 323 ou não. Similarmente, se a moldura atual 14b era do modo de codificação de domínio de tempo, e a moldura anterior 14a não foi recebida pelo decodificador 10, então a moldura atual 14b tem dados de cancelamento de serrilhado futuro incorporados nela ou não, dependendo do modo da moldura anterior 14a. Em especial, se a moldura anterior 14a era de outro modo de codificação, isto é modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo, então dados de cancelamento de serrilhado futuro estariam presentes na moldura atual 14b de modo a cancelar o serrilhamento, do contrário ocorrendo no limite entre segmentos de tempo 16a e 16b. Entretanto, se a moldura anterior 14a era do mesmo modo de codificação, isto é, modo de codificação de domínio de tempo, então o analisador 20 não teria que esperar que dados de cancelamento de serrilhado futuro estejam presentes na moldura atual 14b.
Consequentemente, o analisador 20 explora uma segunda porção de sintaxe 26 de modo a verificar se dados de cancelamento de serrilhado futuro 34 estão presentes na moldura atual 14b ou não. Na análise da corrente de dados 12, o analisador 20 pode selecionar uma dentre uma primeira ação de expectativa da moldura atual 14b para compreender e, dessa maneira, ler dados de cancelamento de serrilhado futuro 34 a partir da moldura atual 14b e uma segunda ação de não-expectativa da moldura atual 14b para compreender e, assim, não ler dados de cancelamento de serrilhado futuro 34 da moldura atual 14b, a seleção dependendo da segunda porção de sintaxe 26. Se presente, o reconstrutor 22 é configurado para executar cancelamento de serrilhado futuro nos limites entre o segmento de tempo atual 16b e o segmento de tempo anterior 16a da moldura anterior 14a usando os dados de cancelamento de serrilhado futuro.
Dessa maneira, comparado à situação onde a segunda porção de sintaxe não está presente, o decodificador da figura 1 não tem que descartar, ou interromper sem sucesso a análise da moldura atual 14b, mesmo no caso do modo de codificação da moldura anterior 14a ser desconhecido ao decodificador 10 devido à perda de moldura, por exemplo. Ao invés disso, o decodificador 10 é capaz de explorar a segunda porção de sintaxe 26 de modo a verificar se a moldura atual 14b tem dados de cancelamento de serrilhado futuro 34 ou não. Em outras palavras, a segunda porção de sintaxe provê um critério claro quanto a se uma das alternativas, isto é, dados FAC para o limite da moldura anterior estarem presentes ou não, aplica e garante que qualquer decodificador possa se comportar igualmente independente de sua implementação, mesmo no caso de perda de moldura. Dessa maneira, a realização descrita acima introduz mecanismos para superar o problema de perda de moldura.
Antes da descrição de realizações mais detalhadas adicionalmente abaixo, um codificador capaz de gerar a corrente de dados 12 da Figura 1 é descrito com a Figura 2 respectiva. O codificador da Figura 2 é geralmente indicado com o sinal de referência 40 e é para codificação do sinal de informação na corrente de dados 12, de modo que a corrente de dados 12 compreenda a seqüência de molduras nas quais os segmentos de tempo 16a a 16c do sinal de informação são codificados, respectivamente. O codificador 40 compreende um construtor 42 e um insersor 44. O construtor é configurado para codificar um segmento de tempo atual 16b do sinal de informação na informação da moldura atual 14b usando um primeiro modo selecionado dentre um modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e um modo de codificação de domínio de tempo. O insersor 44 é configurado para inserir a informação 28 na moldura atual 14b com uma primeira porção de sintaxe 24 e uma segunda porção de sintaxe 26, onde a primeira porção de sintaxe sinaliza a primeira seleção, isto é, a seleção do modo de codificação. O construtor 42, por sua vez, é configurado para determinar dados de cancelamento de serrilhado futuro para cancelamento de serrilhado futuro em um limite entre o segmento de tempo atual 16b e um segmento de tempo anterior 16a de uma moldura anterior 14a e insere dados de cancelamento de serrilhado futuro 34 na moldura atual 14b no caso de a moldura atual 14b e a moldura anterior 14a serem codificadas usando diferentes modos dentre um modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e um modo de codificação de domínio de tempo, e impedindo a inserção de quaisquer dados de cancelamento de serrilhado futuro na moldura atual 14b no caso de a moldura atual 14b e a moldura anterior 14a serem codificadas usando modos iguais dentre o modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e o modo de codificação de domínio de tempo. Isto é, sempre que o construtor 42 do codificador 40 decidir que é preferido, em algum sentido de otimização, comutar de um dentre os dois modos de codificação para o outro, o construtor 42 e insersor 44 são configurados para determinar e inserir dados de cancelamento de serrilhado futuro 34 na moldura atual 14b, enquanto, se for mantido o modo de codificação entre as molduras 14a e 14b, dados FAC 34 não são inseridos na moldura atual 14b. De modo a permitir que o decodificador derive da moldura atual 14b, sem conhecimento do conteúdo da moldura anterior 14a, quanto a se dados FAC 34 estão presentes dentro da moldura atual 14b ou não, certa porção de sintaxe 26 é definida dependendo se a moldura atual 14b e a moldura anterior 14a são codificadas usando modos iguais ou diferentes dentre o modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e o modo de codificação de domínio de tempo. Exemplos específicos para a realização da segunda porção de sintaxe 26 serão descritos abaixo.
A seguir, uma configuração é descrita de acordo com a qual um codec, um decodificador e um codificador aos quais as realizações descritas acima pertencem, suporta um tipo especial de estrutura de moldura de acordo com o qual as próprias molduras 14a a 14c são o objeto de sub-emolduramento, e existem duas versões distintas do modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo. Em especial, de acordo com estas realizações adicionalmente descritas abaixo, a primeira porção de sintaxe 24 associa a respectiva moldura da qual a mesma foi lida, com um primeiro tipo de moldura denominado modo de codificação FD (domínio de freqüência) a seguir, ou um segundo tipo de moldura denominado modo de codificação LPD a seguir e, se a respectiva moldura for do segundo tipo de moldura, associa sub- molduras de uma subdivisão da respectiva moldura, composta de um número de sub-molduras, com uma moldura respectiva dentre um primeiro tipo de sub-moldura e um segundo tipo de sub-moldura. Como será descrito em maiores detalhes abaixo, o primeiro tipo de sub-moldura pode envolver as sub-molduras correspondentes ao TCX codificado enquanto o segundo tipo de sub-moldura pode envolver estas sub-molduras respectivas a serem codificadas usando ACELP, isto é, Previsão Linear de Excitação de Livro de Códigos Adaptativa. Também, qualquer outro modo de codificação de previsão linear de excitação de livro de código pode ser usado.
O reconstrutor 22 da Figura 1 é configurado para manusear estas diferentes possibilidades de modo de codificação.
Para esta finalidade, o reconstrutor 22 pode ser construído conforme ilustrado na Figura 3. De acordo com a configuração da Figura 3, o reconstrutor 22 compreende dois comutadores 50 e 52 e três módulos de decodificação 54, 56 e 58, cada um dos quais é configurado para decodificar molduras e sub-molduras de tipo específico como será descrito em maiores detalhes abaixo.
O comutador 50 tem uma entrada na qual a informação 28 da moldura atualmente decodificada 14b entra, e uma entrada de controle por meio da qual o comutador 50 é controlável dependendo da primeira porção de sintaxe 25 da moldura atual. O comutador 50 tem duas saídas, uma das quais é conectada à entrada do módulo de decodificação 54 responsável pela decodificação FD (FD = domínio de freqüência), e a outra das quais é conectada à entrada do sub-comutador 52 que tem também duas saídas, umas das quais é conectada a um módulo de decodificação de entrada 56 responsável pela decodificação de previsão linear de excitação codificada de transformada, e a outra é conectada a uma entrada de módulo 58 responsável pela decodificação de previsão linear de excitação de livro de código. Todos os módulos de codificação 54 a 58 enviam segmentos de sinal reconstruindo os segmentos de tempo respectivos associados com as molduras e sub-molduras respectivas das quais estes segmentos de sinal foram derivados pelo respectivo modo de decodificação, e um manuseador de transição 60 recebe os segmentos de sinal nas respectivas entradas do mesmo de modo a executar o manuseio de transição e cancelamento de serrilhamento descrito acima e descrito em maiores detalhes abaixo, de modo a enviar em sua saída do sinal de informação reconstruído. O manuseador de transição 60 usa os dados de cancelamento de serrilhado futuro 34 conforme ilustrado na Figura 3.
De acordo com a realização da Figura 3, o reconstrutor 22 opera como segue. Se a primeira porção de sintaxe 24 associa a moldura atual com um primeiro tipo de moldura, modo de codificação FD, o comutador 50 envia a informação 28 para o módulo de decodificação FD 54 para usar decodificação de domínio de freqüência como uma primeira versão do modo de decodificação de transformada de cancelamento de serrilhado de domínio de tempo para reconstruir o segmento de tempo 16b associado com a moldura atual 15b. Por outro lado, isto é, se a primeira porção de sintaxe 24 associa a moldura atual 14b com o segundo tipo de moldura, modo de codificação LPD, o comutador 50 envia informação 28 para o sub- comutador 52 que, por sua vez, opera na estrutura da sub-moldura da moldura atual 14. Para ser mais preciso, de acordo com o modo LPD, uma moldura é dividida em uma ou mais sub-molduras, a subdivisão correspondendo a uma subdivisão do segmento de tempo correspondente 16b em sub-porções não sobrepostas do segmento de tempo atual 16b como será descrito em maiores detalhes abaixo com relação às figuras a seguir. A porção de sintaxe 24 sinaliza para cada uma dentre uma ou mais sub-porções quanto as mesmas estarem associadas com um primeiro ou um segundo tipo de sub-moldura, respectivamente. Se uma sub-moldura respectiva for do primeiro tipo de sub-moldura, sub-comutador 52 envia a respectiva informação 28 pertencendo àquela sub-moldura para o módulo de decodificação TCX 56 de modo a usar decodificação de previsão linear de excitação codificada de transformada como uma segunda versão do modo de decodificação de transformada de cancelamento de serrilhado de domínio de tempo para reconstruir a respectiva sub- porção do segmento de tempo atual 16b. Se, entretanto, a respectiva sub-moldura for do segundo tipo de sub-moldura, o sub- comutador 52 envia a informação 28 para módulo 58 de modo a executar codificação de previsão linear de excitação de livro de código como o modo de decodificação de domínio de tempo para reconstruir a respectiva sub-porção do sinal de tempo atual 16b.
Os segmentos de sinal reconstruído enviados pelos módulos 54 a 58 são colocados juntos pelo manuseador de transição 60 na ordem de tempo correta (apresentação) com execução do manuseamento de transição respectivo e adição de sobreposição e processamento de cancelamento de serrilhado de domínio de tempo conforme descrito acima e descrito em maiores detalhes abaixo.
Em especial, o módulo de decodificação FD 54 pode ser construído conforme mostrado na Figura 4 e operar conforme descrito abaixo. De acordo com a Figura 4, o módulo de decodificação FD 54 compreende um desquantizador 70 e um re- transformador 72 serialmente conectados entre si. Conforme descrito acima, se a moldura atual 14b for uma moldura FD, a mesma é enviada para o módulo 54 e o dispositivo quantizador 70 executa uma desquantização de variação espectral da informação de coeficiente de transformada 74 dentro da informação 28 da moldura atual 14b usando informação de fator de escala 76, também compreendida pela informação 28. Os fatores de escala foram determinados no lado do codificador usando, por exemplo, princípios psicoacústicos de modo a manter o ruído de quantização abaixo do limite de mascaramento humano.
O re-transformador 72, então, executa uma re- transformada na informação de coeficiente de transformada desquantizada para obter um segmento de sinal re-transformado 78 estendendo, no tempo, sobre e além do segmento de tempo 16b associado com a moldura atual 14b. Como será descrito em maiores detalhes abaixo, a re-transformada executada pelo re-transformador 72 pode ser uma IMDCT (Transformada De Cosseno Discreta Modificada Inversa) envolvendo uma DCT IV seguida pela operação de desdobramento onde após a janela ser executada usando uma janela de re-transformada que pode ser igual, ou desviada da janela de transformada usada na geração da informação de coeficiente de transformada 74 pela execução das etapas mencionadas acima na ordem inversa, isto é janela seguida por uma operação de dobra seguida por uma DCT IV seguida pela quantização que pode ser guiada por princípios psicoacústicos de modo a manter o ruído de quantização abaixo do limite de mascaramento.
É válido observar que a quantidade de informação de coeficiente de transformada 28 é devida à natureza TDAC da re- transformada do re-transformador 72, menor do que o número de amostras que o segmento de sinal reconstruído 78 é longo. No caso de IMDCT, o número de coeficientes de transformada dentro da informação 47 é bastante igual ao número de amostras de segmento de tempo 16b. Isto é, a transformada subjacente pode ser denominada uma transformada de amostragem criticamente necessitando de cancelamento de serrilhado de domínio de tempo de modo a cancelar o serrilhamento ocorrendo devido à transformada nos limites, isto é, as bordas inicial e de fuga do segmento de tempo atual 16b.
Como uma observação mínima, deveria ser observado que similar à estrutura de sub-moldura de molduras LPD, as molduras FD poderiam estar sujeitas a uma estrutura de sub- emolduramento, também. Por exemplo, molduras FD poderiam ser de modo de janela longo no qual uma janela única é usada para colocar na janela uma porção de sinal se estendendo além da borda inicial e de fuga do segmento de tempo atual, de modo a codificar o respectivo segmento de tempo, ou de um modo de janela curto no qual a porção de sinal respectiva se estendendo além dos limites do segmento de tempo atual da moldura FD é subdividida em sub- porções menores, cada uma das quais está sujeita a uma colocação em janela e transformada individual. Neste caso, módulo de codificação FD 54 enviaria um segmento de sinal re-transformado para sub-porção do segmento de tempo atual 16b.
Após ter descrito uma implementação possível do módulo de codificação FD 54, uma implementação possível do módulo de decodificação TCX LP e do módulo de decodificação LP de excitação de livro de código 56 e 58, respectivamente, é descrita com relação à Figura 5. Em outras palavras, a Figura 5 lida com o caso onde a moldura atual é uma moldura LPD. Neste caso a moldura atual 14b é estruturada em uma ou mais sub-molduras. No presente caso, uma estruturação nas três sub-molduras 90a, 90b e 90c é ilustrada. Pode ser que uma estruturação seja, por default, restrita a certas possibilidades de subestruturação. Cada uma das sub-porções está associada com uma respectiva dentre as sub- porções 92a, 92b e 92c do segmento de tempo atual 16b. Isto é, a uma ou mais sub-porções 92a a 92c cobrem sem intervalo, sem sobreposição, o segmento de tempo 16b inteiro. De acordo com a ordem das sub-porções 92a a 92c dentro do segmento de tempo 16b, uma ordem seqüencial é definida entre as sub-molduras 92a a 92c.
Conforme é ilustrado na Figura 5, a moldura atual 14b não é completamente subdividida nas sub-molduras 90a a 90c. Em ainda outras palavras, algumas porções da moldura atual 14b pertencem a todas as sub-molduras comumente, de modo que a primeira e a segunda porções de sintaxe 24 e 26, os dados FAC 34 e, potencialmente, dados adicionais como a informação LPC, como será descrito abaixo em maiores detalhes, embora a informação LPC possa também ser subestruturada nas sub-molduras individuais.
De modo a tratar com as sub-molduras TCX, o módulo de decodificação TCX LP 56 compreende um derivador de pesagem espectral 94, um medidor de peso espectral 96 e um re- transformador 98. Para ilustração de objetivos, a primeira sub- moldura 90a é mostrada como uma sub-moldura TCX, enquanto a segunda sub-moldura 90b é pressuposta como uma sub-moldura ACELP.
De modo a processar a sub-moldura TCX 90a, o derivador 94 deriva um filtro de pesagem espectral da informação LPC 104 dentro da informação 28 da moldura atual 14b, e o medidor de peso espectral 96 pesa espectralmente informação de coeficiente de transformada com relação à sub-moldura 90a usando o filtro de pesagem espectral recebido do derivador 94, conforme mostrado pela seta 106.
O re-transformador 98, por sua vez, re-transforma a informação de coeficiente de transformada pesada espectralmente para obter um segmento de sinal re-transformado 108 se estendendo, no tempo t, sobre e além da sub-porção 92a do segmento de tempo atual. A re-transformada executada pelo re-transformador 98 pode ser igual àquela executada pelo re-transformador 72. Na realidade, os re-transformadores 72 e 98 podem ter hardware, uma rotina de software ou uma porção de hardware programável em comum.
A informação LPC 104 compreendida pela informação 28 da moldura LPD atual 16b pode representar coeficientes LPC de um instante no tempo dentro do segmento de tempo 16b, ou por vários casos no tempo dentro do segmento de tempo 16b, tal como um conjunto de coeficientes LPC para cada sub-porção 92a a 92c. O derivador de filtro de pesagem espectral 94 converte os coeficientes LPC em fatores de pesagem espectrais espectralmente pesando os coeficientes de transformada dentro da informação 90a, de acordo com uma função de transferência que é derivada dos coeficientes LPC pelo derivador 94, de modo que o mesmo substancialmente aproxima o filtro de síntese LPC ou alguma versão modificada do mesmo. Qualquer desquantização executada, além da pesagem espectral pelo medidor de peso 96, pode ser espectralmente não variante. Dessa maneira, diferindo do modo de decodificação FD, o ruído de quantização de acordo com o modo de codificação TCX é espectralmente formado usando análise LPC.
Devido ao uso da re-transformada, entretanto, o segmento de sinal de re-transformada 108 sofre de serrilhamento. Pelo uso da mesma re-transformada, entretanto, segmentos de sinal de re-transformada 78 e 108 de molduras consecutivas e sub- molduras, respectivamente, podem ter seu serrilhamento cancelado pelo manuseador de transição 60, meramente pela adição das porções de sobreposição das mesmas.
No processamento as sub-molduras (A)CELP 90b, o derivador de sinal de excitação 100 deriva um sinal de excitação da informação de atualização de excitação dentro da respectiva sub-moldura 90b e o filtro de síntese LPC 102 executa filtragem de síntese LPC no sinal de excitação, usando a informação LPC 104 de modo a obter um segmento de sinal sintetizado LP 110 para a sub- porção 92b do segmento de tempo atual 16b.
Derivadores 94 e 100 podem ser configurados para executar alguma interpolação de modo a adaptar a informação LPC 104 dentro da moldura atual 16b para a posição variada da sub- moldura atual, correspondendo à sub-porção atual dentro do segmento de tempo atual 16b...
Comumente descrevendo as Figuras 3 a 5, os segmentos de sinal variados 108, 110 e 78 entram no manuseador de transição 60 que, por sua vez, coloca juntos todos os segmentos de sinal na ordem de tempo correta. Em especial, o manuseador de transição 60 executa cancelamento de serrilhamento de domínio de tempo dentro de porções de janela temporariamente sobrepostas nos limites entre segmentos de tempo de molduras imediatamente consecutivas dentre as molduras FD e sub-molduras TCX para reconstruir o sinal de informação através destes limites. Dessa maneira, não há necessidade de enviar dados de cancelamento de serrilhado para limites entre molduras FD consecutivas, limites entre molduras FD seguidas por molduras TCX e sub-molduras TCX seguidas por molduras FD, respectivamente.
Entretanto, a situação muda sempre que uma moldura FD ou sub-molduras TCX (ambas representando uma variante do modo de codificação de transformada) continuam uma sub-molduras ACELP (representando uma forma de modo de codificação de domínio de tempo). Neste caso, manuseador de transição 16, deriva um sinal de síntese de cancelamento de serrilhado futuro dos dados de cancelamento de serrilhado futuro a partir da moldura atual e adiciona o primeiro sinal de síntese de cancelamento de serrilhado futuro ao segmento de sinal re-transformado 100 ou 78 do segmento de tempo imediatamente anterior para reconstruir o sinal de informação através do respectivo limite. Se o limite ocorre na parte interna do segmento de tempo atual 16b porque uma sub- moldura TCX e uma sub-moldura ACELP dentro da moldura atual definem o limite entre as sub-porções de segmento de tempo associadas, manuseador de transição pode certificar-se da existência dos respectivos dados de cancelamento de serrilhado futuro para estas transições a partir da primeira porção de sintaxe 24 e a estrutura de sub-emolduramento definida aqui. A porção de sintaxe 26 não é necessária. A moldura anterior 14a pode ter sido perdida ou não.
Entretanto, no caso da coincidência de limite com o limite entre segmentos de tempo consecutivos 16a e 16b, o analisador 20 tem que inspecionar a segunda porção de sintaxe 26 dentro da moldura atual, de modo a determinar se a moldura atual 14b tem dados de cancelamento de serrilhado futuro 34, os dados FAC 34 sendo para cancelamento de serrilhado ocorrendo na borda principal do segmento de tempo atual 16b, porque tanto a moldura anterior é uma moldura FD quanto a última sub-moldura da moldura LPD anterior é uma sub-moldura TCX. Pelo menos, o analisador 20 necessita conhecer a porção de sintaxe 26 no caso em que o conteúdo da moldura anterior tiver sido perdido.
Declarações similares se aplicam para transições em outra direção, isto é, de sub-molduras ACELP para molduras FD ou molduras TCX. Contanto que os limites respectivos entre os respectivos segmentos e sub-porções de segmento estejam dentro da parte interna do segmento de tempo atual, o analisador 20 não terá problema na determinação da existência dos dados de cancelamento de serrilhado futuro 34 para estas transições da própria moldura atual 14b, isto é da primeira porção de sintaxe 24. A segunda porção de sintaxe não é necessária e chega a ser irrelevante. Entretanto, se o limite ocorrer ou coincidir com um limite entre o segmento de tempo anterior 16a e o segmento de tempo atual 16b, o analisador 20 necessita inspecionar a segunda porção de sintaxe 26, de modo a determinar se os dados de cancelamento de serrilhado futuro 34 estão presentes para a transição na extremidade principal do segmento de tempo atual 16b ou não - pelo menos no caso de não ter acesso à moldura anterior.
No caso de transições de ACELP para FD ou TCX, o manuseador de transição 60 deriva de um segundo sinal de síntese de cancelamento de serrilhado futuro a partir dos dados de cancelamento de serrilhado futuro 34 e adiciona o segundo sinal de síntese de cancelamento de serrilhado futuro ao segmento de sinal re-transformado dentro do segmento de tempo atual de modo a reconstruir o sinal de informação através do limite.
Após ter descrito realizações com relação às Figuras 3 a 5, que geralmente se referem a uma realização de acordo com a qual molduras e sub-molduras de diferentes modos de codificação existem, uma implementação específica destas realizações será descrita em maiores detalhes abaixo. A descrição destas realizações concomitantemente inclui medidas possíveis na geração da respectiva corrente de dados compreendendo estas molduras e sub-molduras, respectivamente. A seguir, esta realização específica é descrita como um codec de voz e áudio unificado (USAC) embora os princípios descritos no mesmo também seriam transferíveis para outros sinais.
Comutação de janela em USAC tem vários propósitos. Ela mistura molduras FD, isto é, molduras codificadas com codificação de freqüência, e molduras LPD que são, por sua vez, estruturadas em (sub-)molduras ACELP e (sub-)molduras TCX. Molduras ACELP (codificação de domínio de tempo) aplicam uma execução de janela retangular, não sobreposta às amostras de entrada enquanto molduras TCX (codificação de domínio de freqüência) aplicam uma execução de janela não retangular, de sobreposição às amostras de entrada e, então, codificam o sinal usando uma transformada de cancelamento de serrilhado de domínio de tempo (TDAC), isto é, o MDCT, por exemplo. Para harmonizar as janelas gerais, molduras TCX podem usar janelas centralizadas com formatos homogêneos e gerenciar as transições em limites de moldura ACELP, informação explícita para cancelamento do serrilhado de domínio de tempo e efeitos de janela das janelas TCX harmonizadas são transmitidos. Esta informação adicional pode ser vista como cancelamento de serrilhado futuro (FAC). Dados FAC são quantizados na realização a seguir no domínio pesado LPC, de modo que ruídos de quantização de FAC e MDCT decodificados são da mesma natureza. A Figura 6 mostra o processamento no codificador em uma moldura 120 codificada com codificação de transformada (TC) que é precedida e seguida por uma moldura 122, 124 codificada com ACELP. Em linha com a discussão acima, a noção de TC inclui MDCT em relação a blocos longos e curtos usando AAC, assim como TCX tem base em MDCT. Isto é, a moldura 120 pode tanto ser uma moldura FD quanto uma (sub-)moldura TCX como a sub-moldura 90a, 92a na Figura 5, por exemplo. A Figura 6 mostra marcadores de domínio de tempo e limites de moldura. Limites de moldura ou segmento de tempo são indicados por linhas pontilhadas enquanto os marcadores de domínio de tempo são as linhas verticais curtas ao longo dos eixos horizontais. Deveria ser mencionado que na descrição a seguir os termos “segmento de tempo” e “moldura” são, algumas vezes, usados como sinônimos devido à associação única entre eles.
Dessa maneira, as linhas verticais pontilhadas na Figura 6 mostram o início e o final da moldura 120, que pode ser uma sub-moldura/sub-parte de segmento de tempo ou uma moldura/segmento de tempo. LPC1 e LPC2 devem indicar o centro de uma janela de análise correspondendo aos coeficientes de filtro LPC ou filtros LPC que são usados a seguir de modo a executar o cancelamento de serrilhado. Estes coeficientes de filtro são derivados no decodificador, por exemplo, pelo reconstrutor 22 ou pelos derivadores 90 e 100 pelo uso de interpolação usando a informação LPC 104 (veja Figura 5). Os filtros LPC compreendem: LPC1 correspondendo a um cálculo do mesmo no início da moldura 120, e LPC2 correspondendo a um cálculo do mesmo ao final da moldura 120. A moldura 122 é presumida ter sido codificada com ACELP. O mesmo se aplica à moldura 124. A Figura 6 é estruturada em quatro linhas numeradas no lado da mão direita da Figura 6. Cada linha representa uma etapa no processamento no decodificador. Deve ser entendido que cada linha é alinhada no tempo com a linha acima. A linha 1 da Figura 6 representa o sinal de áudio original, segmentado nas molduras 122, 120 e 124 conforme declarado acima. Assim, à esquerda do marcador “LPC1”, o sinal original é codificado com ACELP. Entre os marcadores “LPC1” e “LPC2”, o sinal original é codificado usando TC. Conforme descrito acima, no TC a formatação do ruído é aplicada diretamente no domínio de transformada ao invés de no domínio de tempo. À direita do marcador LPC2, o sinal original é novamente codificado com ACELP, isto é, um modo de codificação de domínio de tempo. Esta seqüência de modos de codificação (ACELP então TC então ACELP) é escolhida de modo a ilustrar o processamento no FAC, visto que FAC refere-se a ambas as transições (ACELP para TC e TC para ACELP).
Observe, entretanto, que as transições em LPC1 e LPC2 na Figura 6 podem ocorrer dentro da parte interna de um segmento de tempo atual ou podem coincidir com a borda inicial do mesmo. No primeiro caso, a determinação da existência dos dados FAC associados pode ser executada pelo analisador 20 com base, meramente, na primeira porção de sintaxe 24, enquanto no caso de perda de moldura, o analisador 20 pode necessitar da porção de sintaxe 26 para fazer isto no último caso.
A linha 2 da Figura 6 corresponde aos sinais decodificados (síntese) em cada uma dentre as molduras 122, 120 e 124. Consequentemente, o sinal de referência 110 da Figura 5 é usado dentro da moldura 122 correspondendo à possibilidade de que a última sub-porção da moldura 122 seja uma sub-porção codificada com ACELP como 92b na Figura 5, enquanto uma combinação de sinal de referência 108/78 é usada na ordem para indicar a contribuição do sinal para a moldura 120, analogamente às figuras 5 e 4. Novamente, à esquerda do marcador LPC1, a síntese daquela moldura 122 é pressuposta ter sido codificada com ACELP. Assim, o sinal de síntese 110 à esquerda do marcador LPC1 é identificado como um sinal de síntese ACELP. Existe, principalmente, uma grande similaridade entre a síntese ACELP e o sinal original naquela moldura 122, visto que ACELP atende à codificação da forma de onda tão precisamente quanto possível. Então, o segmento entre os marcadores LPC1 e LPC2 na linha 2 da Figura 6 representa a saída da MDCT inversa daquele segmento 120 conforme observado no decodificador. Novamente, o segmento 120 pode ser o segmento de tempo 16b de uma moldura FD ou uma sub-porção de uma sub-moldura codificada com TCX, tal como 90b na Figura 5, por exemplo. Na figura, este segmento 108/78 é denominado “saída de moldura TC”. Nas Figuras 4 e 5, este segmento foi denominado segmento de sinal re-transformado. No caso de moldura/segmento 120 ser uma sub-parte de um segmento TCX, a saída de moldura TC representa um sinal de síntese TLP recolocado de janela, onde TLP significa “Codificação de transformada com Previsão Linear” para indicar que no caso de TCX, formatação de ruído do respectivo segmento é obtida no domínio de transformada pela filtragem dos coeficientes MDCT usando informação espectral dos filtros LPC, LPC1 e LPC2, respectivamente, o que foi também descrito acima com relação à Figura 5 com referência ao medidor de peso espectral 96. Observe também, que o sinal de síntese, isto é, o sinal reconstruído preliminarmente incluindo o serrilhamento, entre marcadores “LPC1” e “LPC2” na linha 2 da Figura 6, isto é, sinal 108/78, contém efeitos de janela e serrilhado de domínio de tempo em seu início e no final. No caso de MDCT como a transformada TDAC, o serrilhado de domínio de tempo pode ser simbolizado como desdobramentos 126a e 126b, respectivamente. Em outras palavras, a curva superior na linha 2 da Figura 6 que se estende do início para o final daquele segmento 120 e é indicada com sinais de referência 108/78, mostra o efeito de janela devido à colocação de janela de transformada ser plana no meio de modo a deixar o sinal transformado não modificado, mas não no início e no final. O efeito de dobramento é mostrado nas curvas inferiores 126a e 126b no início e no final do segmento 120 com o sinal de menos no início do segmento e o sinal de mais ao final do segmento. Este efeito de janela e serrilhado de domínio de tempo (ou dobramento) é inerente à MDCT que serve como um exemplo explícito para transformadas TDAC. O serrilhamento pode ser cancelado quando duas molduras consecutivas são codificadas usado a MDCT como ela foi descrita acima. Entretanto, no caso onde a moldura “MDCT codificada” 120 não é precedida e/ou seguida por outras molduras MDCT, sua janela e serrilhado de domínio de tempo não são cancelados e permanecem no sinal de domínio de tempo após a MDCT inversa. Cancelamento de serrilhado futuro (FAC) pode, então, ser usado para corrigir estes efeitos como foi descrito acima. Finalmente, o segmento 124 após o marcador LPC2 na Figura 6 é também assumido como codificado usando ACELP. Observe que para obter o sinal de síntese naquela moldura, os estados do filtro do filtro LPC 102 (veja Figura 5), isto é, a memória de previsores de longo termo e curto termo, no início da moldura 124 devem ser auto apropriados (“self properly”), o que implica que os efeitos de serrilhado de tempo e janela ao final da moldura anterior 120 entre os marcadores LPC1 e LPC2, devem ser cancelados pela aplicação de FAC de uma maneira específica que será explicada abaixo. Para sumarizar, a linha 2 na Figura 6 contém a síntese de sinais reconstruídos preliminarmente das molduras consecutivas 122, 120 e 124, incluindo o efeito de janela no serrilhamento de domínio de tempo na saída da MDCT inversa para a moldura entre os marcadores LPC1 e LPC2.
Para obter a linha 3 da Figura 6, a diferença entre a linha 1 da Figura 6, isto é, no sinal de áudio original 18, e linha 2 da Figura 6, isto é, o sinal de síntese 110 e 108/78, respectivamente, conforme descrito acima, é computada. Isto resulta em um primeiro sinal de diferença 128.
O processamento adicional no lado do codificador com referência à moldura 120 é explicado a seguir com relação à linha 3 da Figura 6. No início da moldura 120, primeiramente, duas contribuições tomadas da síntese ACELP 110 à esquerda do marcador LPC1 na linha 2 da Figura 6, são adicionadas entre si como segue:
A primeira contribuição 130 é uma versão de janela e tempo inverso (de dobra) das últimas amostras de síntese ACELP, isto é, as últimas amostras de segmento de sinal 110 mostradas na Figura 5. O comprimento e formato da janela para este sinal de tempo inverso é igual à parte de serrilhamento da janela de transformada à esquerda da moldura 120. Esta contribuição 130 pode ser vista como uma boa aproximação de serrilhado de domínio de tempo presente na moldura MDCT 120 da linha 2 na Figura 6.
A segunda contribuição 132 é uma resposta de entrada zero de janela (ZIR) do filtro de síntese LPC1 com o estado inicial tomado como os estados finais deste filtro ao final da síntese ACELP 110, isto é, ao final da moldura 122. O comprimento e formato da janela desta segunda contribuição podem ser iguais aqueles da primeira contribuição 130.
Com a nova linha 3 na Figura 6, isto é, após adicionar as duas contribuições 130 e 132 acima, uma nova diferença é tomada pelo codificador para obter a linha 4 na Figura 6. Observe que o sinal de diferença 134 para no marcador LPC2. Uma vista aproximada do envelope esperado do sinal de erro no domínio de tempo é mostrada na linha 4 na Figura 6. O erro na moldura ACELP 122 é esperado ser aproximadamente plano em amplitude no domínio de tempo. Então, o erro na moldura TC 120 é esperado exibir o formato geral, isto é, envelope de domínio de tempo, conforme mostrado neste segmento 120 da linha 4 na Figura 6. Este formato esperado da amplitude de erro é apenas mostrado aqui para objetivos ilustrativos.
Observe que se o decodificador usar apenas os sinais de síntese da linha 3 na Figura 6 para produzir ou reconstruir o sinal de áudio decodificado, então o ruído de quantização seria tipicamente conforme o envelope esperado do sinal de erro 136 na linha 4 da Figura 6. Deve, assim, ser entendido que uma correção deveria ser enviada ao decodificador para compensar este erro no início e no final da moldura TC 120. Este erro resulta dos efeitos de janela e serrilhado de domínio de tempo inerentes ao par MDCT/MDCT inversa. A janela e serrilhado de domínio de tempo foram reduzidos no início da moldura TC 120 pela adição das contribuições de tubo 132 e 130 a partir da moldura ACELP anterior 122, conforme declarado acima, mas não podem ser completamente cancelados como na operação TDAC real de molduras MDCT consecutivas. À direita da moldura TC 120 na linha 4 da Figura 6, um pouco antes do marcador LPC2, toda janela e serrilhado de domínio de tempo permanecem do par MDCT/MDCT inversa e têm que ser, dessa maneira, completamente cancelados por cancelamento de serrilhado futuro.
Antes de prosseguir para descrever o processo de codificação de modo a obter os dados de cancelamento de serrilhado futuro, é feito referência à Figura 7 de modo a explicar brevemente a MDCT como um exemplo de processamento de transformada TDAC. Ambas as direções de transformada são ilustradas e descritas com relação à Figura 7. A transição de domínio de tempo para domínio de transformada é ilustrada na metade superior da Figura 7, enquanto a re-transformada é ilustrada na parte inferior da Figura 7.
Na transição de domínio de tempo para domínio de transformada, a transformada TDAC envolve uma janela 150 aplicada a um intervalo 152 do sinal a ser transformado, a qual se estende além do segmento de tempo 154 para o qual os últimos coeficientes de transformada resultantes são realmente transmitidos dentro da corrente de dados. A janela aplicada na janela 150 é mostrada na Figura 7 como compreendendo uma parte de serrilhado Lk cruzando a extremidade inicial do segmento de tempo 154 e uma parte de serrilhado Rk na extremidade traseira do segmento de tempo 154 com uma parte de não serrilhamento Mk se estendendo entre elas. Uma MDCT 156 é aplicada ao sinal de janela. Isto é, uma dobra 158 é executada de modo a dobrar um primeiro quarto de intervalo 152 se estendendo entre a extremidade inicial do intervalo 152 e a extremidade final de segmento de tempo 154 de volta ao longo do limite da mão esquerda (inicial) de segmento de tempo 154. O mesmo é feito com relação a uma porção de serrilhado Rk. Subseqüentemente, uma DCT IV 160 é executada no sinal de janela e dobrado, tendo tantas amostras quanto o sinal de tempo 154, de modo a obter coeficientes de transformada do mesmo número. Uma conversação é executada, então, em 162. Naturalmente, a quantização 162 pode ser vista como não estando compreendida pela transformada TDAC.
Uma re-transformada faz a inversa. Isto é, após uma desquantização 164, uma IMDCT 166 é executada envolvendo, primeiramente, uma OCT-1 IV 168 de modo a obter amostras de tempo, o número das quais é igual ao número de amostras do segmento de tempo 154 a ser reconstruído. Posteriormente, um processo de desdobramento 168 é executado na porção do sinal inversamente transformada recebida do módulo 168, portanto expandindo o intervalo de tempo ou o número de amostras de tempo do resultado IMDCT pela duplicação do comprimento das porções de serrilhamento. Então, uma janela é executada em 170, usando uma janela de re- transformada 172 que pode ser igual àquela usada pela janela 150, mas pode também ser diferente. Os blocos restantes na Figura 7 ilustram o TDAC ou processamento de sobreposição/adição executado nas porções de sobreposição de segmentos consecutivos 154, isto é, a adição das porções de serrilhamento desdobradas dos mesmos, conforme executado pelo manuseador de transição na Figura 3. Conforme ilustrado na Figura 7, o TDAC pelos blocos 172 e 174 resulta em cancelamento de serrilhamento.
A descrição da figura 6 é agora prosseguida adicionalmente. Para compensar eficientemente os efeitos de janela e de serrilhamento de domínio de tempo no início e no final da moldura TC 120 na linha 4 da Figura 6, e pressupondo que a moldura TC 120 usa formatação de ruído de domínio de freqüência (FDNS), correção de serrilhamento futuro (FAC) é aplicada após o processamento descrito na Figura 8. Primeiro, deveria ser observado que a figura 8 descreve este processamento para ambos, a parte esquerda da moldura TC 120 ao redor do marcador LPC1, e para a parte direita da moldura TC 120 ao redor do marcador LPC2. Lembrar que a moldura TC 120 na Figura 6 conforme pressuposto é precedida por uma moldura ACELP 122 no limite do marcador LPC1 e seguida por uma moldura ACELP 124 no limite do marcador LPC2.
Para compensar os efeitos de janela e serrilhamento de domínio de tempo ao redor do marcador LPC1, o processamento é descrito na Figura 8. Primeiramente, um filtro de pesagem W(z) é computado a partir do filtro LPC1. O filtro de pesagem W(z) pode ser uma análise modificada ou filtro de branqueamento A(z) de LPC1. Por exemplo, W(z) = A(z/À) com À sendo um fator de pesagem predeterminado. O sinal de erro no início da moldura TC é indicado com sinal de referência 138 exatamente como no caso na linha 4 da Figura 6. Este erro é denominado de alvo FAC na Figura 8. O sinal de erro 138 é filtrado pelo filtro W(z) em 140, com um estado inicial deste filtro, isto é, com um estado inicial se sua memória de filtro, sendo o erro ACELP 141 na moldura ACELP 122 na linha 4 na Figura 6. A saída do filtro W(z), então, forma a entrada de uma transformada 142 na figura 6. A transformada é exemplificativamente mostrada como sendo um MDCT. Os coeficientes de transformada enviados pela MDCT são, então, quantizados e codificados no módulo de processamento 143. Estes coeficientes codificados podem formar pelo menos parte dos dados FAC 34 mencionados anteriormente. Estes coeficientes codificados podem ser transmitidos no lado de codificação. A saída do processo Q, isto é os coeficientes MDCT quantizados, é, então, a entrada de uma transformada inversa tal como uma IMDCT 144 para formar um sinal de domínio de tempo que é, então, filtrado pelo filtro inverso 1/W(z) em 145 que tem memória zero (estado inicial zero). A filtragem através de 1/W(z) é estendida para passar o comprimento do alvo FAC usando entrada zero para as amostras que se estendem após o alvo FAC. A saída do filtro 1/W(z) é um sinal de síntese FAC 146, que é um sinal de correção que pode, agora, ser aplicado ao início da moldura TC 120 para compensar o efeito de janela e de serrilhamento de domínio de tempo ocorrendo lá.
Agora, o processamento para a correção de janela e serrilhamento de domínio de tempo ao final da moldura TC 120 (antes do marcador LPC2) é descrita. Para este fim, é feito referência à Figura 9.
O sinal de erro ao final da moldura TC 120 na linha 4 da Figura 6 é provido com referência ao sinal 147 e representa o alvo FAC na Figura 9. O alvo FAC 147 está sujeito a mesma seqüência de processo que o alvo FAC 138 da Figura 8, com o processamento diferindo meramente no estado inicial do filtro de pesagem W(z) 140. O estado inicial do filtro 140 de modo a filtrar o alvo FAC 147 é o erro na moldura TC 120 na linha 4 da Figura 6, indicada pelo sinal de referência 148 na Figura 6. Então, as etapas de processamento adicionais 142 a 145 são iguais as da Figura 8 que trata do processamento do alvo FAC no início da moldura TC 120.
O processamento nas figuras 8 e 9 é executado completamente da esquerda para a direita quando aplicado no codificador para obter a síntese FAC local e computar a reconstrução resultante de modo a verificar se a mudança do modo de codificação envolvido pela escolha do modo de codificação TC da moldura 120 é a escolha ideal ou não. No decodificador, o processamento nas Figuras 8 e 9 é aplicado apenas do meio para a direita. Isto é, os coeficientes de transformada codificados e quantizados transmitidos pelo processador Q 143 são decodificados para formar a entrada da IMDCT. Observe, por exemplo, Figuras 10 e 11. A Figura 10 é igual ao lado direito da Figura 8, enquanto a Figura 11 é igual ao lado direito da Figura 9. O manuseador de transição 60 da Figura 3 pode, de acordo com uma realização específica descrita agora, ser implementado de acordo com as Figuras 10 e 11. Isto é, manuseador de transição 60 pode submeter informação de coeficiente de transformada dentro dos dados FAC 34 presentes dentro da moldura atual 14b a uma re-transformada de modo a resultar em um primeiro sinal de síntese FAC 146 no caso de transição de uma sub-parte de segmento de tempo ACELP para um segmento de tempo FD ou sub-parte TCX, ou um segundo sinal de síntese FAC 149 ao fazer a transição de um segmento de tempo FD ou sub-parte TCX de um segmento de tempo para uma sub-parte de segmento de tempo ACELP.
Observe, novamente, que os dados FAC 34 podem relacionar-se a esta transação ocorrendo dentro do segmento de tempo atual em cujo caso a existência dos dados FAC 34 é derivável para analisador 20 a partir unicamente da porção de sintaxe 24, embora o analisador 20 necessite, no caso da moldura anterior ter sido perdida, explorar a porção de sintaxe 26 de modo a determinar se os dados FAC 34 existem para estas transições na borda inicial do segmento de tempo atual 16b. A Figura 12 mostra como a síntese completa ou sinal reconstruído para a moldura atual 120 pode ser obtido usando os sinais de síntese FAC nas Figuras 8 a 11, e aplicação nas etapas inversas da Figura 6. Observe, novamente, que mesmo as etapas que são mostradas agora na figura 12, são também executadas pelo codificador de modo a verificar se o modo de codificação para a moldura atual conduz para a melhor otimização, por exemplo, no sentido de taxa/distorção ou similar. Na Figura 12, é pressuposto que a moldura ACELP 122 à esquerda do marcador LPC1 já está sintetizada ou reconstruída, tal como pelo módulo 58 da Figura 3, até o marcador LPC1 conduzindo para o sinal de síntese ACELP na linha 2 da Figura 12 com o sinal de referência 110. Visto que a correção FAC é também usada ao final da moldura TC, é também pressuposto que a moldura 124 após o marcador LPC2 será uma moldura ACELP. Então, para produzir um sinal de síntese ou reconstruído na moldura TC 120 entre os marcadores LPC1 e LPC2 na Figura 12, as etapas a seguir são executadas. Estas etapas são também ilustradas nas Figuras 13 e 14, com a figura 13 ilustrando as etapas executadas pelo manuseador de transição 60, de modo a tratar com a transição de um segmento TC codificado ou sub-parte de segmento para uma sub-parte de segmento codificado ACELP, enquanto a figura 14 descreve a operação de manuseador de transição para as transições inversas. 1. Uma etapa é decodificar a moldura TC codificada por MDCT e posicionar o sinal de domínio de tempo assim obtido entre os marcadores LPC1 e LPC2, conforme mostrado na linha 2 da Figura 12. Decodificação é executada pelo módulo 54 ou módulo 56 e inclui a MDCT inversa como um exemplo para uma re- transformada TDAC, de modo que a moldura TC decodificada contém efeitos de janela e de serrilhamento de domínio de tempo. Em outras palavras, o segmento ou sub-parte de segmento de tempo a ser decodificado atualmente e indicado pelo índice k nas Figuras 13 e 14, pode ser uma sub-parte de segmento de tempo codificado ACELP 92b conforme ilustrado na Figura 13 ou um segmento de tempo 16b que é uma sub-parte codificada FD ou codificada TCX 92a, conforme ilustrado na Figura 14. No caso da Figura 13, a moldura processada anteriormente é, dessa maneira, um segmento codificado TC ou sub-parte de segmento de tempo, e no caso da Figura 14, o segmento de tempo anteriormente processado é sub-parte codificada ACELP. As reconstruções ou sinal de síntese conforme enviado pelos módulos 54 a 58 sofrem parcialmente os efeitos de serrilhamento. Isto é também verdadeiro para os segmentos de sinal 78/108. 2. Outra etapa no processamento do manuseador de transição 60 é a geração do sinal de síntese FAC de acordo com a Figura 10 no caso da Figura 14, e de acordo com a Figura 11 no caso da Figura 13. Isto é, o manuseador de transição 60 pode executar uma re-transformada 191 nos coeficientes de transformada dentro dos dados FAC 34, de modo a obter os sinais de síntese FAC 146 e 149, respectivamente. Os sinais de síntese FAC 146 e 149 estão posicionados no início e no final do segmento codificado TC que, por sua vez, sofre os efeitos de serrilhamento e é registrado ao segmento de tempo 78/108. No caso da Figura 13, por exemplo, o manuseador de transição 60 posiciona o sinal de síntese FAC 149 no final da moldura codificada TC k-1, conforme também mostrado na linha 1 da Figura 12. No caso da Figura 14, o manuseador de transição 60 posiciona o sinal de síntese FAC 146 no início da moldura codificada TC k como é também mostrado na linha 1 da Figura 12. Observe novamente que a moldura k é a moldura atualmente a ser decodificada, e que a moldura k-1 é a moldura anteriormente decodificada... 3. No tocante à situação da Figura 14, é considerado onde o modo de codificação ocorre no início da moldura TC atual k, a janela e sinal de síntese ACELP (invertido) dobrado 130 da moldura ACELP k-1 precedendo a moldura TC k, e a resposta de entrada zero de janela ou ZIR, do filtro de síntese LPC1, isto é, sinal 132, são posicionados de modo a serem registrados ao segmento de sinal re-transformado 78/108 sofrendo de serrilhamento. Esta contribuição é mostrada na linha 3 da Figura 12. Conforme mostrado na Figura 14 e conforme já descrito acima, o manuseador de transição 60 obtém sinal de cancelamento de serrilhamento 132 pela continuidade da filtragem de síntese LPC da sub-moldura CELP anterior além do limite inicial do segmento de tempo atual k e janela da continuação de sinal 110 dentro do sinal atual k com ambas as etapas sendo indicadas com os sinais de referência 190 e 192 na Figura 14. De modo a obter sinal de cancelamento de serrilhamento 130, o manuseador de transição 60 também coloca na janela na etapa 194 o segmento de sinal reconstruído 110 da moldura CELP anterior e usa esta janela e sinal de tempo inverso como o sinal 130. 4. As contribuições de linhas 1, 2 e 3 da Figura 12 e as contribuições 78/108, 132, 130 e 146 na Figura 14 e contribuições 78/108, 149 e 196 na Figura 13, são adicionadas pelo manuseador de transição 60 nas posições registradas explicadas acima, para formar o sinal de síntese ou reconstruído de áudio para a moldura atual k no domínio original conforme mostrado na linha 4 da Figura 12. Observe que o processamento das Figuras 13 e 14 produz um sinal de síntese ou reconstruído 198 em uma moldura TC onde efeitos de serrilhamento de domínio de tempo e de janela são cancelados no início e final da moldura, e onde a descontinuidade potencial do limite da moldura ao redor do marcador LPC1 foi suavizada e perceptualmente mascarada pelo filtro 1/W(z) na Figura 12. Dessa maneira, a Figura 13 pertence ao processamento atual da moldura codificada CELP k e conduz o cancelamento de serrilhado futuro ao final do segmento codificado TC anterior. Conforme ilustrado em 196, o sinal de áudio finalmente reconstruído é reconstruído com menos serrilhamento através do limite entre os segmentos k-1 e k. O processamento da Figura 14 conduz ao cancelamento de serrilhamento futuro no início do segmento codificado TC atual k, conforme ilustrado no sinal de referência 198 mostrando o sinal reconstruído através do limite entre segmentos k e k-1. O serrilhamento remanescente na extremidade traseira do segmento atual k é tanto cancelada por TDAC, no caso do segmento subseqüente ser um segmento codificado TC, ou FAC de acordo com a Figura 13 no caso do segmento subseqüente ser um segmento codificado ACELP. A Figura 13 menciona esta última possibilidade pela designação de sinal de referência 198 ao segmento de sinal de segmento de tempo k-1. A seguir, possibilidades específicas serão mencionadas quanto a como a segunda porção de sintaxe 26 pode ser implementada. Por exemplo, de modo a manusear a ocorrência de molduras perdidas, a porção de sintaxe 26 pode ser realizada como um prev_mode de campo de 2 bits que sinaliza dentro da moldura atual 14b explicitamente o modo de codificação que foi aplicado na moldura anterior 14a de acordo com a tabela a seguir:
Figure img0001
Com outras palavras, este campo de 2 bits pode ser denominado de prev_mode e pode, assim, indicar um modo de codificação da moldura anterior 14a. No caso do exemplo mencionado acima, quatro estados diferentes são diferenciados, sendo eles: 1) A moldura anterior 14a é uma moldura LPD, a última sub-moldura da qual é uma sub-moldura ACELP; 2) a moldura anterior 14a é uma moldura LPD, a última sub-moldura da qual é uma sub-moldura codificada TCX; 3) a moldura anterior é uma moldura FD usando uma janela de transformada longa e 4) a moldura anterior é uma moldura FD usando janelas de transformada curtas.
A possibilidade de potencialmente usar comprimentos de janelas diferentes de modo de codificação FD já foi mencionada acima com relação à descrição da Figura 3. Naturalmente, a porção de sintaxe 26 pode ter meramente três estados diferentes e o modo de codificação FD pode meramente ser operado com um comprimento de janela constante, portanto sumarizando as duas últimas dentre as opções listadas acima 3 e 4.
Em qualquer caso, com base no campo de 2 bits descrito acima, o analisador 20 é capaz de decidir se os dados FAC para a transição entre o segmento de tempo atual e o segmento de tempo anterior 16a estão presentes dentro da moldura atual 14a ou não. Como será descrito em maiores detalhes abaixo, o analisador 20 e o reconstrutor 22 são, ainda, capazes de determinar com base no prev_mode se a moldura anterior 14a era uma moldura FD usando uma janela longa (FD_long) ou se a moldura anterior foi uma moldura FD usando janelas curtas (FD_short) e se a moldura atual 14b (se a moldura atual for uma moldura LPD) sucede uma moldura FD ou uma moldura LPD cuja diferenciação é necessária de acordo com a realização a seguir, de modo a analisar corretamente a corrente de dados e reconstruir o sinal de informação, respectivamente.
Assim de acordo com a possibilidade mencionada de uso de um identificador de 2-bit como a porção de sintaxe 26, cada moldura 16a a 16c seria provida com um identificador de 2-bit adicional, em adição à porção de sintaxe 24 que define o modo de codificação da moldura atual como sendo um modo de codificação FD ou LPD e a estrutura de sub-emolduramento no caso de modo de codificação LPD.
Para todas as realizações acima, deveria ser mencionado que outras dependências entre molduras deveriam ser evitadas também. Por exemplo, o decodificador da Figura 1 poderia ser capaz de SBR. Neste caso, a freqüência de cruzamento poderia ser analisada pelo analisador 20 a partir de cada moldura 16a a 16c dentro dos respectivos dados de extensão SBR ao invés de analisar esta freqüência de cruzamento com um cabeçalho SBR que poderia ser transmitido dentro da corrente de dados 12 menos frequentemente. Outras dependências entre as molduras poderiam ser removidas em sentido similar.
É importante observar para todas as realizações descritas acima, que o analisador 20 poderia ser configurado para colocar no buffer pelo menos a moldura decodificada atualmente 14b dentro de um buffer com passagem de todas as molduras 14a a 14c através deste buffer de uma maneira FIFO (primeiro a entrar é o primeiro a sair). Na armazenagem em buffer, o analisador 20 poderia executar a remoção de molduras deste buffer em unidades de molduras 14a a 14c. Isto é, o enchimento e remoção do buffer do analisador 20 poderiam ser executados em unidades de molduras 14a a 14c, de modo a obedecer as restrições impostas pelo espaço máximo de buffer disponível que, por exemplo, acomoda meramente uma, ou mais que uma, molduras de tamanho máximo em um tempo.
Uma possibilidade de sinalização alternativa para porção de sintaxe 26 com consumo de bit reduzido será descrita a seguir. De acordo com esta alternativa, uma estrutura de construção diferente da porção de sintaxe 26 é usada. Na configuração descrita antes, a porção de sintaxe 26 era um campo de 2 bits que é transmitido em cada moldura 14a a 14c da corrente de dados USAC codificada. Visto que para a parte FD é importante apenas para o decodificador saber se ele tem que ler dados FAC da corrente de bit no caso da moldura anterior 14a ser perdida, estes 2-bits podem ser divididos em dois marcadores de 1 bit onde um deles é sinalizado dentro de cada moldura 14a a 14c como fac_data_present. Este bit pode ser introduzido na estrutura de single_channel_element e channel_pair_element, consequentemente conforme mostrado nas tabelas das Figuras 15 e 16. As Figuras 15 e 16 podem ser vistas como uma definição de estrutura de alto nível da sintaxe das molduras 14, de acordo com a presente realização, onde as funções “function_name(...)” chama sub-rotinas, e nomes de elemento de sintaxe escritos em negrito indicam a leitura do respectivo elemento de sintaxe da corrente de dados. Em outras palavras, as porções marcadas ou porções hachuradas nas Figuras 15 e 16 mostram que cada moldura 14a a 14c é, de acordo com esta realização, provida com um marcador fac_data_present. Sinais de referência 199 mostram estas porções.
O outro marcador de 1 bit prev_frame_was_lpd é, então, transmitida apenas na moldura atual se a mesma foi codificada usando a parte LPD de USAC, e sinaliza se a moldura anterior foi codificada usando o caminho LPD do USAC, também. Isto é mostrado na tabela da Figura 17.
A tabela da figura 17 mostra uma parte da informação 28 na figura 1, no caso da moldura atual 14b ser uma moldura LPD. Conforme mostrado em 200, cada moldura LPD é provida com um marcador prev_frame_was_lpd. Esta informação é usada para analisar a sintaxe da moldura LPD atual. Pode ser derivado da Figura 18 que o conteúdo e a posição dos dados FAC 34 nas molduras LPD dependem da transição na extremidade final da moldura LPD atual ser uma transição entre modo de codificação TCX e modo de codificação CELP ou uma transição de modo de codificação FD para modo de codificação CELP. Em especial, se a moldura atualmente decodificada 14b for uma moldura LPD precedida por uma moldura FD 14a, e fac_data_presente sinalizar que dados FAC estão presentes na moldura LPD atual (por que a sub-moldura inicial é uma sub- moldura ACELP), então dados FAC são lidos ao final da sintaxe da moldura LPD em 202 com os dados FAC 34 incluindo, naquele caso, um fator de ganho fac_gain conforme mostrado em 204 na figura 18. Com este fator de ganho, a contribuição 149 da figura 13 é ajustada quanto ao ganho.
Se, entretanto, a moldura atual for uma moldura LPD com a moldura anterior sendo também uma moldura LPD, isto é, se a transição entre sub-molduras TCX e CELP ocorre entre a moldura atual e a moldura anterior, dados FAC são lidos em 206 sem a opção de ajuste ao ganho, isto é, sem os dados FAC 34 incluírem um elemento de sintaxe de ganho FAC fac_gain. Adicionalmente, a posição dos dados FAC lidos em 206 diferem da posição na qual dados FAC são lidos em 202 no caso da moldura atual ser uma moldura LPD e a moldura anterior ser uma moldura FD. Embora a posição de leitura 202 ocorra ao final da moldura LPD atual, a leitura dos dados FAC em 206 ocorre antes da leitura dos dados específicos de sub-moldura, isto é, os dados ACELP ou TCX dependendo dos modos das sub-molduras da estrutura de sub- molduras, em 208 e 210, respectivamente.
No exemplo de Figuras 15 a 18, a informação LPC 104 (Figura 5) é lida após os dados específicos de sub-molduras tais como 90a e 90b (comparar Figura 5) em 212.
Apenas para completar, a estrutura de sintaxe da moldura LPD de acordo com a Figura 17 é ainda explicada com relação aos dados FAC potencialmente contidos adicionalmente dentro da moldura LPD, de modo a prover informação FAC com relação a transições entre sub-molduras TCX e ACELP na parte interna do segmento de tempo codificado LPD atual. Em especial, de acordo com a realização das Figuras 15 a 18, a estrutura de sub-moldura LPD é restrita para subdividir o segmento de tempo codificado LPD meramente nas unidades de quartos com designação destes quartos tanto para TCX quanto para ACELP. A estrutura exata LPD é definida pelo elemento de sintaxe lpd_mode lido em 214. O primeiro e o segundo e o terceiro e o quarto quarto podem formar, juntos, uma sub-moldura TCX enquanto as molduras ACELP são restritas ao comprimento de apenas um quarto. Uma sub-moldura TCX pode também se estender sobre o segmento de tempo codificado LPD inteiro, em cujo caso o número de sub-molduras é meramente um. O “while loop” (controle de alça) na Figura 17 sobe através dos quartos do segmento de tempo codificado LPD atualmente e transmite, sempre que o quarto atual k for o início de uma nova sub-moldura dentro da parte interna do segmento de tempo codificado LPD atualmente, dados FAC em 216, contanto que a sub-moldura imediatamente anterior da moldura LPD atualmente iniciando/decodificada seja de outro modo, isto é, modo TCX se a sub-moldura atual for do modo ACELP e vice-versa.
Por uma questão de inteireza, apenas, a Figura 19 mostra uma estrutura de sintaxe possível de uma moldura FD, de acordo com a realização das Figuras 15 a 18. Pode ser visto que dados FAC são lidos ao final da moldura FD com a decisão se os dados FAC 34 estão presentes ou não, meramente envolvendo o marcador fac_data_present. Comparado a isto, a análise de fac_data 34 no caso de molduras LPD conforme mostrado na figura 17 necessita, para uma análise correta, o conhecimento do marcador prev_frame_was_lpd.
Assim, o marcador de 1 bit prev_frame_was_lpd é transmitido apenas se a moldura atual for codificada usando a parte LPD de USAC e sinalizar se a moldura anterior foi codificada usando o caminho LPD do codec USAC (veja Sintaxe de lpd_channel_stream() na Figura 17).
Com relação à realização da figura 15 a 19, deveria ser ainda observado que um elemento de sintaxe adicional poderia ser transmitido em 220, isto é, no caso da moldura atual ser uma moldura LPD e a moldura anterior ser uma moldura FD (com uma primeira moldura da moldura LPD atual sendo uma moldura ACELP), de modo que dados FAC são lidos em 202 para se dirigirem à transição da moldura FD para sub-moldura ACELP na extremidade final da moldura LPD atual. Esta leitura do elemento de sintaxe adicional em 220 poderia indicar se a moldura FD anterior 14a é de FD_long ou FD_short. Dependendo deste elemento de sintaxe, os dados FAC 202 poderiam ser influenciados. Por exemplo, o comprimento do sinal de síntese 149 poderia ser influenciado dependendo do comprimento da janela usada para transformar a moldura LPD anterior. Sumarizando a realização das Figuras 15 e 19 e características de transferência mencionadas na mesma na realização descrita com relação às Figuras 1 a 14, o seguinte poderia ser aplicado nas últimas realizações tanto individualmente quanto em combinação: 1) Os dados FAC 34 mencionados nas figuras anteriores significavam primariamente observar os dados FAC presentes na moldura atual 14b de modo a permitir cancelamento de serrilhamento futuro ocorrendo na transição entre a moldura anterior 14a e a moldura atual 14b, isto é, entre os segmentos de tempo correspondentes 16a e 16b. Entretanto, dados FAC adicionais podem estar presentes. Estes dados FAC adicionais, entretanto, tratam da transição entre sub-molduras codificadas com TCX e sub- molduras codificadas CELP posicionadas internamente à moldura atual 14b no caso da mesma ser do modo LPD. A presença ou ausência destes dados FAC adicionais é independente da porção de sintaxe 26. Na Figura 17, estes dados FAC adicionais foram lidos em 216. A presença ou existência dos mesmos meramente depende do lpd_mode lido em 214. O último elemento de sintaxe, por sua vez, é parte da porção de sintaxe 24 revelando o modo de codificação da moldura atual. Lpd_mode com core_mode lido em 230 e 232 mostrado nas Figuras 15 e 16 correspondem à porção de sintaxe 24. 2) Adicionalmente, a porção de sintaxe 26 pode ser composta de mais que um elemento de sintaxe conforme descrito acima. O marcador FAC_data_present indica se fac_data para o limite entre a moldura anterior e a moldura atual estão presentes ou não. Este marcador está presente em uma moldura LPD assim como em molduras FD. Um marcador adicional, na realização acima denominado de prev_frame_was_lpd, é transmitido nas molduras LPD apenas de modo a denotar se a moldura anterior 14a era do modo LPD ou não. Em outras palavras, este segundo marcador incluído na porção de sintaxe 26 indica se a moldura anterior 14a era uma moldura FD. O analisador 20 espera e lê este marcador meramente no caso da moldura atual ser uma moldura LPD. Na Figura 17, este marcador é lido em 200. Dependendo deste marcador, o analisador 20 pode esperar que os dados FAC estejam incluídos, e assim ler da moldura atual, um valor de ganho fac_gain. O valor de ganho é usado pelo reconstrutor para definir um ganho do sinal de síntese FAC na transição entre os segmentos de tempo atual e anterior. Na realização das Figuras 15 a 19, este elemento de sintaxe é lido em 204 com a dependência no segundo marcador estar isenta da comparação das condições conduzindo a leitura de 206 e 202, respectivamente. Alternativamente ou adicionalmente, prev_frame_was_lpd pode controlar uma posição onde o analisador 20 espera e lê os dados FAC. Na realização das Figuras 15 a 19 estas posições eram 206 ou 202. Adicionalmente, a segunda porção de sintaxe 26 pode compreender ainda um marcador adicional no caso da moldura atual ser uma moldura LPD com a sub-moldura inicial da qual sendo uma moldura ACELP e uma moldura anterior sendo uma moldura FD, de modo a indicar se a moldura FD anterior é codificada usando uma janela de transformada longa ou uma janela de transformada curta. O último marcador poderia ser lido em 220 no caso da realização anterior das figuras 15 a 19. O conhecimento sobre este comprimento de transformada FD pode ser usado de modo a determinar o comprimento dos sinais de síntese FAC e o tamanho dos dados FAC 38, respectivamente. Por esta medida, os dados FAC podem ser adaptados no tamanho para sobrepor o comprimento da janela da moldura FD anterior, de modo que um comprometimento melhor entre qualidade de codificação e taxa de codificação possa ser atingido. 3) Pela divisão da segunda porção de sintaxe 26 nos três marcadores mencionados acima, é possível transmitir meramente um marcador ou bit para sinalizar a segunda porção de sintaxe 26 no caso da moldura atual ser uma moldura FD, meramente dois marcadores ou bits no caso da moldura atual ser uma moldura LPD e a moldura anterior ser uma moldura LPD, também. Meramente no caso de uma transição de uma moldura FD para uma moldura LPD atual, um terceiro marcador tem que ser transmitido na moldura atual. Alternativamente, conforme declarado acima, a segunda porção de sintaxe 26 pode ser um indicador de 2 bits transmitido para cada moldura e indicando o modo da moldura precedendo esta moldura, na extensão necessária para o analisador decidir se os dados FAC 38 devem ser lidos da moldura atual ou não, e se sim, de onde e quão longo o sinal de síntese FAC deve ser. Isto é, a realização específica das Figuras 15 a 19 poderia ser facilmente transferida para a realização de uso do identificador de 2 bits acima para implementação da segunda porção de sintaxe 26. A invés de FAC_data_present nas Figuras 15 e 16, o identificador de 2 bits poderia ser transmitido. Marcadores em 200 e 220 não teriam que ser transmitidos. Ao invés disso, o conteúdo de fac_data_present na cláusula “se” conduzindo a 206 e 218, poderia ser derivado pelo analisador 20 do identificador de 2 bits. A tabela a seguir poderia ser avaliada no decodificador para explorar o indicador de 2 bits.
Figure img0002
meramente, ter três valores diferentes possíveis no caso de molduras FD usarem apenas um comprimento possível.
Uma estrutura de sintaxe muito similar, mas ligeiramente diferindo daquela descrita acima com relação a 15 a 19 é mostrada nas Figuras 20 a 22, usando os mesmos sinais de referência usados com relação às Figuras 15 a 19, de modo que referência é feita àquela realização para explicação da realização das Figuras 20 a 22...
Com relação às realizações descritas com referência à Figura 3 e figuras subseqüentes, é observado que qualquer esquema de codificação de transformada com propriedade de serrilhamento pode ser usada em conexão com as molduras TCX, diferente de MDCT. Além do mais, um esquema de codificação de transformada tal como FFT poderia também ser usado, então, sem serrilhamento no modo LPD, isto é, sem FAC para transições de sub- moldura dentro de molduras LPD, e, dessa maneira, sem a necessidade de transmissão de dados FAC para limites de sub- molduras entre limites de LPD. Dados FAC seriam, então, meramente incluídos para cada transição de FD para LPD e vice-versa.
Com relação às realizações descritas com relação à Figura 1 e figuras subseqüentes, é observado que as mesmas foram direcionadas para o caso onde a porção de sintaxe adicional foi definida em linha, isto é, dependendo unicamente de uma comparação entre o modo de codificação da moldura atual e o modo de codificação da moldura anterior, conforme definido na primeira porção de sintaxe daquela moldura anterior, de modo que em todas as realizações acima o decodificador ou analisador foi capaz de antecipar unicamente o conteúdo da segunda porção de sintaxe da moldura atual pelo uso, ou comparação, da primeira porção de sintaxe destas molduras, isto é da moldura anterior e atual. Isto é, no caso de nenhuma perda de moldura, era possível para o decodificador ou analisador derivar das transições entre molduras se dados FAC estavam presentes ou não na moldura atual. Se uma moldura foi perdida, a segunda porção de sintaxe tal como o bit de marcador fac_data_present explicitamente provê aquela informação. Entretanto, de acordo com outra realização, o codificador poderia explorar esta possibilidade de sinalização explícita oferecida pela segunda porção de sintaxe 26, de modo a aplicar uma codificação inversa de acordo com a qual a porção de sintaxe 26 é adaptativa, isto é, com a decisão de ser executada em uma moldura pela base de moldura, por exemplo, - definir de modo que embora a transição entre a moldura atual e a moldura atual seja do tipo que usualmente é acompanhada por dados FAC (tais como FD/TCX, isto é, qualquer modo de codificação TC, para ACELP, isto é qualquer modo de codificação de domínio de tempo ou vice-versa) a porção de sintaxe das molduras atuais indica a ausência de FAC. O decodificador poderia, então, ser implementado para agir estritamente de acordo com a porção de sintaxe 26, portanto efetivamente desabilitando ou suprimindo, a transmissão de dados FAC no codificador que sinaliza esta supressão meramente pela definição, por exemplo, de fac_data_present = 0. O cenário onde isto pode ser uma opção favorável é quando codificação em taxas de bit muito baixas, onde os dados FAC adicionais poderiam custar muitos bits enquanto o artefato de serrilhamento resultante poderia ser tolerável, se comparado com a qualidade de som geral.
Embora alguns aspectos tenham sido descritos no contexto de um aparelho, fica claro que estes aspectos também representam uma descrição do método correspondente, onde um bloco ou dispositivo corresponde a uma etapa do método ou uma característica de uma etapa de método. Analogamente, aspectos descritos no contexto de uma etapa do método também representam uma descrição de um bloco correspondente ou item ou característica de um aparelho correspondente. Algumas ou todas as etapas do método podem ser executadas por (ou usando) um equipamento de hardware, como, por exemplo, um microprocessador, um computador programável ou um circuito eletrônico. Em algumas realizações, algumas ou mais dentre as etapas mais importantes do método podem ser executadas por este equipamento.
O sinal de áudio codificado inventivo pode ser armazenado em um meio de armazenagem digital ou pode ser transmitido em um meio de transmissão tal como um meio de transmissão sem fio ou um meio de transmissão com fio tal como a Internet.
Dependendo de certos requisitos de implementação, realizações da invenção podem ser implementadas em hardware ou em software. A implementação pode ser executada usando um meio de armazenagem digital, por exemplo, um disquete, um DVD, um BlueRay, um CD, um ROM, um PROM, um EPROM, um EEPROM ou uma memória FLASH, tendo sinais de controle eletronicamente legíveis armazenados nos mesmos, que cooperam (ou são capazes de cooperar) com um sistema de computador programável de modo que o respectivo método seja executado. Portanto, o meio de armazenagem digital pode ser legível por computador.
Algumas realizações de acordo com a invenção compreendem um veículo de dados tendo sinais de controle eletronicamente legíveis, que são capazes de cooperar com um sistema de computador programável, de modo que um dos métodos descritos aqui seja executado.
De forma geral, realizações da presente invenção podem ser implementadas como um produto de programa de computador com um código de programa, o código de programa sendo operacional para executar um dos métodos quando o produto de programa de computador opera em um computador. O código de programa pode, por exemplo, ser armazenado em um veículo legível por máquina.
Outras realizações compreendem o programa de computador para executar um dos métodos descritos aqui, armazenados em um veículo legível por máquina.
Em outras palavras, uma realização do método inventivo é, portanto, um programa de computador tendo um código de programa para executar um dos métodos descritos aqui, quando o programa de computador opera em um computador.
Uma realização adicional dos métodos inventivos é, portanto, um veículo de dados (ou um meio de armazenagem digital, ou um meio legível por computador) compreendendo, gravado no mesmo, o programa de computador para executar um dos métodos descritos aqui. O veículo de dados, o meio de armazenagem digital ou o meio gravado são tipicamente tangíveis e/ou não transitórios.
Uma realização adicional do método inventivo é, portanto, uma corrente de dados ou uma seqüência de sinais representando o programa de computador para executar um dos métodos descritos aqui. A corrente de dados ou a seqüência de sinais pode, por exemplo, ser configurada para ser transferida por meio de uma conexão de comunicação de dados, por exemplo, via Internet.
Uma realização adicional compreende um meio de processamento, por exemplo, um computador, um dispositivo lógico configurado ou adaptado para executar um dos métodos descritos aqui.
Uma realização adicional compreende um computador tendo instalado no mesmo o programa de computador para executar um dos métodos descritos aqui.
Uma realização adicional de acordo com a invenção compreende um aparelho ou um sistema configurado para transferir (por exemplo, eletronicamente ou oticamente) um programa de computador para executar um dos métodos descritos aqui para um receptor. O receptor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou similar. O equipamento ou sistema pode, por exemplo, compreender um servidor de arquivo para transferir o programa de computador para o receptor.
Em algumas realizações, um dispositivo lógico programável (por exemplo, um arranjo de porta programável de campo) pode ser usado para executar algumas ou todas as funcionalidades dos métodos descritos aqui. Em algumas realizações, o arranjo de porta programável de campo pode cooperar com um microprocessador, de modo a executar um dos métodos descritos aqui. De forma geral, os métodos são preferivelmente executados por qualquer aparelho de hardware.
As realizações descritas acima são meramente ilustrativas dos princípios da presente invenção. É entendido que modificações e variações dos arranjos e detalhes descritos aqui ficarão aparentes para especialistas no assunto. É objetivo, portanto, estar limitado apenas pelo escopo das reivindicações de patente pendentes e não pelos detalhes específicos apresentados como descrição e explanação das realizações na mesma.

Claims (10)

1. DECODIFICADOR (10) PARA DECODIFICAÇÃO DE UMA CORRENTE DE DADOS (12), caracterizado por compreender uma sequência de molduras nas quais segmentos de tempo de um sinal de informação (18) são codificados, respectivamente, compreendendo um analisador (20) configurado para analisar a corrente de dados (12), em que o analisador é configurado para, na análise da corrente de dados (12), fazer a leitura de uma primeira porção de sintaxe (24) e uma segunda porção de sintaxe a partir de uma moldura atual (14b); e um reconstrutor (22) configurado para reconstruir um segmento de tempo atual (16b) do sinal de informação (18) associado com a moldura atual (14b) com base em informações (28) obtidas da moldura atual pela análise, usando um primeiro selecionado dentre um modo de decodificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e um modo de decodificação de domínio de tempo, em que o modo de decodificação de domínio de tempo envolve uma transformada de cosseno modificada inversa e a primeira seleção depende da primeira porção de sintaxe (24), em que o analisador (20) é configurado para, na análise da corrente de dados (12), executar um segundo selecionado dentre uma primeira ação de expectativa da moldura atual (14b) para compreender, e, dessa maneira, ler dados de cancelamento de serrilhado futuro (34) a partir da moldura atual (14b) e uma segunda ação de não esperar a moldura atual (14b) para compreender, e assim não ler dados de cancelamento de serrilhado futuro (34) a partir da moldura atual (14b) a segunda seleção dependendo da segunda porção de sintaxe, em que o reconstrutor (22) é configurado para executar cancelamento de serrilhado futuro em um limite entre o segmento de tempo atual (16b) e um segmento de tempo prévio (16a) de uma moldura anterior (14a) usando os dados de cancelamento de serrilhado futuro (34) no caso da primeira ação ser selecionada na segunda seleção, e não realizar o cancelamento serrilhado futuro no caso da segunda ação ser selecionada na segunda seleção.
2. DECODIFICADOR (10), de acordo com a reivindicação 1, em que a segunda porção de sintaxe tem um conjunto de valores possíveis cada um dos quais é unicamente associado com um dentre um conjunto de possibilidades caracterizado por: a moldura anterior (14a) ser do primeiro tipo de moldura, a moldura anterior (14a) ser do segundo tipo de moldura, com a última sub-moldura da mesma sendo do primeiro tipo de sub-moldura, e a moldura anterior (14a) ser do segundo tipo de moldura, com a última sub-moldura da mesma sendo do segundo tipo de sub-moldura, e o analisador (20) ser configurado para executar a segunda seleção com base em uma comparação entre a segunda porção de sintaxe da moldura atual (14b) e a primeira porção de sintaxe (24) da moldura anterior (14a).
3. DECODIFICADOR, de acordo com a reivindicação 2, caracterizado por o analisador (20) ser configurado para executar a leitura dos dados de cancelamento de serrilhado futuro (34) a partir da moldura atual (14b), se a moldura atual (14b) é do segundo tipo de moldura, dependendo da moldura anterior (14a) ser do segundo tipo de moldura com a última sub- moldura da mesma sendo do primeiro tipo de sub-moldura ou a moldura anterior (14a) sendo do primeiro tipo de moldura pelo fato de um ganho de cancelamento de serrilhado futuro ser analisado a partir dos dados de cancelamento de serrilhado futuro (34) no caso da moldura anterior (14a) ser do primeiro tipo de moldura, e não se a moldura anterior for do segundo tipo de moldura com a última sub-moldura da mesma sendo do primeiro tipo de sub-moldura, em que o reconstrutor (22) é configurado para executar o cancelamento de serrilhado futuro em uma intensidade que depende do ganho de cancelamento de serrilhado futuro no caso da moldura anterior (14a) ser do primeiro tipo de moldura.
4. DECODIFICADOR (10), de acordo com a reivindicação 3, caracterizado por o analisador (20) ser configurado para ler, se a moldura atual (14b) for do primeiro tipo de moldura, um ganho de cancelamento de serrilhado futuro a partir dos dados de cancelamento de serrilhado futuro (34) em que o reconstrutor é configurado para executar o cancelamento de serrilhado futuro em uma intensidade que depende do ganho de cancelamento de serrilhado futuro.
5. DECODIFICADOR (10), de acordo com a reivindicação 1, em que a segunda porção de sintaxe tem um conjunto de valores possíveis, cada um dos quais está unicamente associado a um dentre um conjunto de possibilidades caracterizado por compreender: a moldura anterior (14a) ser do primeiro tipo de moldura com envolvimento de uma janela de transformada longa, a moldura anterior (14a) ser do primeiro tipo de moldura com envolvimento de janelas de transformada curtas, a moldura anterior (14a) ser do segundo tipo de moldura com a última sub-moldura da mesma sendo do primeiro tipo de sub-moldura, e a moldura anterior (14a) ser do segundo tipo de moldura com a última sub-moldura da mesma sendo do segundo tipo de sub-moldura, e o analisador ser configurado para executar a segunda seleção baseada em uma comparação entre a segunda porção de sintaxe da moldura atual (14b) e a primeira porção de sintaxe (24) da moldura anterior (14a), e executar a leitura dos dados de cancelamento de serrilhado futuro (34) a partir da moldura atual (14b), se a moldura anterior (14a) for do primeiro tipo de moldura, dependendo da moldura anterior (14a) envolver a janela de transformada longa ou janelas de transformadas curtas, de modo que uma quantidade de dados de cancelamento de serrilhado futuro (34) é maior se a moldura anterior (14a) envolver a janela de transformada longa, e é menor se a moldura anterior (14a) envolver as janelas de transformadas curtas.
6. DECODIFICADOR, de acordo com qualquer uma das reivindicações 1 a 5, caracterizado por o analisador (20) ser configurado para, na análise da corrente de dados (12), executar a segunda seleção dependendo da segunda porção de sintaxe e independente se a moldura atual (14b) e a moldura anterior (14a) são codificados usando modos iguais ou diferentes dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo.
7. CODIFICADOR PARA CODIFICAÇÃO DE UM SINAL DE INFORMAÇÃO (18) NA CORRENTE DE DADOS (12), de modo que a corrente de dados (12) é caracterizada por compreender uma sequência de molduras nas quais segmentos de tempo do sinal de informação (18) são codificados, respectivamente, compreendendo um construtor (42) configurado para codificar um segmento de tempo atual (16b) do sinal de informação (18) na informação da moldura atual (14b) usando um primeiro selecionado dentre um modo de codificação de transformada de Cancelamento de Serrilhado de Domínio e um modo de codificação de domínio de tempo, em que o modo de codificação de domínio de tempo envolve uma transformada de cosseno modificada, e um insersor (44) configurado para inserir a informação (28) na moldura atual (14b) com uma primeira porção de sintaxe (24) e uma segunda porção de sintaxe, em que a primeira porção de sintaxe (24) sinaliza a primeira seleção, em que o construtor (42) e insersor (44) são configurados para determinar dados de cancelamento de serrilhado futuro (34) para cancelamento de serrilhado futuro em um limite entre o segmento de tempo atual (16a) e um segmento de tempo anterior de uma moldura anterior e inserir os dados de cancelamento de serrilhado futuro (34) na moldura atual (14b) no caso da moldura atual (14b) e a moldura anterior (14a) serem codificadas usando modos diferentes dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo, e impedir a inserção de quaisquer dados de cancelamento de serrilhado futuro (34) na moldura atual (14b) no caso da moldura atual (14b) e a moldura anterior (14a) serem codificadas usando modos iguais dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de domínio de tempo, em que a segunda porção de sintaxe (26) é definida dependendo se a moldura atual (14b) e a moldura anterior (14a) são codificadas usando modos iguais ou diferentes dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio tempo.
8. CODIFICADOR, de acordo com a reivindicação 7, caracterizado por o codificador ser configurado para se a moldura atual (14b) e a moldura anterior (14a) são codificadas usando modos iguais dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo, definir a segunda porção de sintaxe como um primeiro estado sinalizando a ausência dos dados de cancelamento de serrilhado futuro (34) na moldura atual, e, se a moldura atual (14b) e a moldura anterior (14a) são codificadas usando modos diferentes dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo, decidir em um sentido de otimização de taxa/distorção, de modo a impedir a inserção dos dados de cancelamento de serrilhado futuro (34) na moldura atual (14b) embora a moldura atual (14b) e a moldura anterior (14a) sejam codificadas usando modos diferentes dentre o modo de codificação de transformada de cancelamento de serrilhado de domínio de tempo e o modo de codificação de domínio de tempo, com definição da segunda porção de sintaxe de modo que a mesma sinalize a ausência dos dados de cancelamento de serrilhado futuro (34) na moldura atual (14b), ou inserir os dados de cancelamento de serrilhado futuro (34) na moldura atual (14b) com definição da segunda porção de sintaxe de modo que a mesma sinaliza a inserção dos dados de cancelamento de serrilhado futuro (34) na moldura atual (14b).
9. MÉTODO PARA DECODIFICAÇÃO DE UMA CORRENTE DE DADOS (12), caracterizado por compreender uma sequência de molduras, na qual segmentos de tempo de um sinal de informação (18) são codificados, respectivamente, compreendendo analisar a corrente de dados (12), em que analisar a corrente de dados compreende a leitura de uma primeira porção de sintaxe (24) e uma segunda porção de sintaxe a partir de uma moldura atual (14b); e reconstrução de um segmento de tempo atual do sinal de informação (18) associado com a moldura atual (14b) com base na informação obtida a partir da moldura atual (14b) pela análise, usando um primeiro selecionado dentre um modo de decodificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e um modo de decodificação de domínio de tempo, em que o modo de decodificação de domínio de tempo envolve uma transformada modificada inversa de cosseno e a primeira seleção depende da primeira porção de sintaxe (24), em que, na análise da corrente de dados (12), uma segunda selecionada de uma primeira ação de expectativa da moldura atual (14b) para compreender, e, assim, ler os dados de cancelamento de serrilhado futuro (34) a partir da moldura atual (14b) e uma segunda ação de não expectativa da moldura atual (14b) para compreender, e, assim, não ler os dados de cancelamento de serrilhado futuro (34) a partir da moldura atual (14b) ser executada, a segunda seleção dependendo da segunda porção de sintaxe, em que a reconstrução compreende executar cancelamento de serrilhado futuro em um limite entre o segmento de tempo atual e um segmento de tempo anterior de uma moldura anterior usando os dados de cancelamento de serrilhado futuro (34).
10. MÉTODO PARA CODIFICAÇÃO DE UM SINAL DE INFORMAÇÃO (18) NA CORRENTE DE DADOS (12), tal que a corrente de dados (12) é caracterizada por compreender uma sequência de molduras nas quais segmentos de tempo do sinal de informação (18) são codificados, respectivamente, compreendendo codificar um segmento de tempo atual do sinal de informação (18) em informação da moldura atual (14b) usando um primeiro selecionado dentre um modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e um modo de codificação de domínio de tempo; em que o modo de codificação de domínio de tempo envolve uma transformada modificada de cosseno; e inserir a informação na moldura atual (14b) com a primeira porção de sintaxe (24) e uma segunda porção de sintaxe, em que a primeira porção de sintaxe (14) sinaliza a primeira seleção, determinar dados de cancelamento de serrilhado futuro (34) para cancelamento de serrilhado futuro em um limite entre o segmento de tempo atual e um segmento de tempo anterior de uma moldura anterior e inserindo os dados de cancelamento de serrilhado futuro (34) na moldura atual (14b) no caso de a moldura atual (14b) e a moldura anterior serem codificadas usando modos diferentes dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo, e impedir a inserção de quaisquer dados de cancelamento de serrilhado futuro (34) na moldura atual (14b) no caso de a moldura atual (14b) e a moldura anterior serem codificadas usando modos iguais dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo, em que a segunda porção de sintaxe é definida dependendo se a moldura atual (14b) e a moldura anterior são codificadas usando modos iguais ou diferentes dentre o modo de codificação de transformada de Cancelamento de Serrilhado de Domínio de Tempo e o modo de codificação de domínio de tempo.
BR122021002034-5A 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro BR122021002034B1 (pt)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US36254710P 2010-07-08 2010-07-08
US61/362,547 2010-07-08
US37234710P 2010-08-10 2010-08-10
US61/372,347 2010-08-10
BR112013000489-4A BR112013000489B1 (pt) 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro
PCT/EP2011/061521 WO2012004349A1 (en) 2010-07-08 2011-07-07 Coder using forward aliasing cancellation

Publications (1)

Publication Number Publication Date
BR122021002034B1 true BR122021002034B1 (pt) 2021-11-03

Family

ID=44584140

Family Applications (3)

Application Number Title Priority Date Filing Date
BR122021002104-0A BR122021002104B1 (pt) 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro
BR112013000489-4A BR112013000489B1 (pt) 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro
BR122021002034-5A BR122021002034B1 (pt) 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro

Family Applications Before (2)

Application Number Title Priority Date Filing Date
BR122021002104-0A BR122021002104B1 (pt) 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro
BR112013000489-4A BR112013000489B1 (pt) 2010-07-08 2011-07-07 Codificador que utiliza cancelamento de serrilhado futuro

Country Status (17)

Country Link
US (1) US9257130B2 (pt)
EP (10) EP4398246A2 (pt)
JP (5) JP5981913B2 (pt)
KR (1) KR101456639B1 (pt)
CN (1) CN103109318B (pt)
AR (1) AR082142A1 (pt)
AU (1) AU2011275731B2 (pt)
BR (3) BR122021002104B1 (pt)
CA (1) CA2804548C (pt)
ES (3) ES2710554T3 (pt)
MX (1) MX2013000086A (pt)
MY (1) MY161986A (pt)
PL (3) PL4120248T3 (pt)
PT (2) PT3451333T (pt)
SG (1) SG186950A1 (pt)
TW (1) TWI476758B (pt)
WO (1) WO2012004349A1 (pt)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2401487T3 (es) * 2008-07-11 2013-04-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y procedimiento para la codificación/decodificación de una señal de audio utilizando un esquema de conmutación de generación de señal ajena
EP2524374B1 (en) * 2010-01-13 2018-10-31 Voiceage Corporation Audio decoding with forward time-domain aliasing cancellation using linear-predictive filtering
EP4398246A2 (en) * 2010-07-08 2024-07-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder using forward aliasing cancellation
EP3503098B1 (en) * 2011-02-14 2023-08-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method decoding an audio signal using an aligned look-ahead portion
BR112015019543B1 (pt) * 2013-02-20 2022-01-11 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Aparelho para codificar um sinal de áudio, descodificador para descodificar um sinal de áudio, método para codificar e método para descodificar um sinal de áudio
EP3671738B1 (en) * 2013-04-05 2024-06-05 Dolby International AB Audio encoder and decoder
CA2915805C (en) 2013-06-21 2021-10-19 Jeremie Lecomte Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pitch lag estimation
TR201808890T4 (tr) 2013-06-21 2018-07-23 Fraunhofer Ges Forschung Bir konuşma çerçevesinin yeniden yapılandırılması.
CN105556600B (zh) * 2013-08-23 2019-11-26 弗劳恩霍夫应用研究促进协会 用于混迭误差信号来处理音频信号的装置及方法
ES2716652T3 (es) * 2013-11-13 2019-06-13 Fraunhofer Ges Forschung Codificador para la codificación de una señal de audio, sistema de transmisión de audio y procedimiento para la determinación de valores de corrección
EP2980795A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
EP2980796A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
EP2980794A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder using a frequency domain processor and a time domain processor
FR3024582A1 (fr) * 2014-07-29 2016-02-05 Orange Gestion de la perte de trame dans un contexte de transition fd/lpd
KR101892086B1 (ko) 2016-05-19 2018-08-27 주식회사 삼양사 옥심에스테르 유도체 화합물, 이를 포함하는 광중합 개시제, 및 감광성 조성물
US10438597B2 (en) * 2017-08-31 2019-10-08 Dolby International Ab Decoder-provided time domain aliasing cancellation during lossy/lossless transitions
KR101991903B1 (ko) 2017-12-07 2019-10-01 주식회사 삼양사 카바졸 옥심에스테르 유도체 화합물 및 이를 포함하는 광중합 개시제와 감광성 조성물
WO2020094263A1 (en) 2018-11-05 2020-05-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and audio signal processor, for providing a processed audio signal representation, audio decoder, audio encoder, methods and computer programs
KR102228630B1 (ko) 2018-12-28 2021-03-16 주식회사 삼양사 카바졸 멀티 베타 옥심에스테르 유도체 화합물 및 이를 포함하는 광중합 개시제와 포토레지스트 조성물
US11488613B2 (en) * 2019-11-13 2022-11-01 Electronics And Telecommunications Research Institute Residual coding method of linear prediction coding coefficient based on collaborative quantization, and computing device for performing the method

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE302991T1 (de) * 1998-01-22 2005-09-15 Deutsche Telekom Ag Verfahren zur signalgesteuerten schaltung zwischen verschiedenen audiokodierungssystemen
US7516064B2 (en) 2004-02-19 2009-04-07 Dolby Laboratories Licensing Corporation Adaptive hybrid transform for signal analysis and synthesis
FI118835B (fi) * 2004-02-23 2008-03-31 Nokia Corp Koodausmallin valinta
FI118834B (fi) * 2004-02-23 2008-03-31 Nokia Corp Audiosignaalien luokittelu
EP1798724B1 (en) * 2004-11-05 2014-06-18 Panasonic Corporation Encoder, decoder, encoding method, and decoding method
KR100878766B1 (ko) * 2006-01-11 2009-01-14 삼성전자주식회사 오디오 데이터 부호화 및 복호화 방법과 장치
US20070168197A1 (en) 2006-01-18 2007-07-19 Nokia Corporation Audio coding
US8379868B2 (en) 2006-05-17 2013-02-19 Creative Technology Ltd Spatial audio coding based on universal spatial cues
KR101016224B1 (ko) 2006-12-12 2011-02-25 프라운호퍼-게젤샤프트 추르 푀르데룽 데어 안제반텐 포르슝 에 파우 인코더, 디코더 및 시간 영역 데이터 스트림을 나타내는 데이터 세그먼트를 인코딩하고 디코딩하는 방법
CN101231850B (zh) * 2007-01-23 2012-02-29 华为技术有限公司 编解码方法及装置
CA2691993C (en) * 2007-06-11 2015-01-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder for encoding an audio signal having an impulse-like portion and stationary portion, encoding methods, decoder, decoding method, and encoded audio signal
CA2871498C (en) * 2008-07-11 2017-10-17 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder and decoder for encoding and decoding audio samples
EP2144230A1 (en) * 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
ES2401487T3 (es) * 2008-07-11 2013-04-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y procedimiento para la codificación/decodificación de una señal de audio utilizando un esquema de conmutación de generación de señal ajena
KR20100007738A (ko) * 2008-07-14 2010-01-22 한국전자통신연구원 음성/오디오 통합 신호의 부호화/복호화 장치
PT2146344T (pt) * 2008-07-17 2016-10-13 Fraunhofer Ges Forschung Esquema de codificação/descodificação de áudio com uma derivação comutável
US9037474B2 (en) * 2008-09-06 2015-05-19 Huawei Technologies Co., Ltd. Method for classifying audio signal into fast signal or slow signal
FR2936898A1 (fr) * 2008-10-08 2010-04-09 France Telecom Codage a echantillonnage critique avec codeur predictif
KR101649376B1 (ko) * 2008-10-13 2016-08-31 한국전자통신연구원 Mdct 기반 음성/오디오 통합 부호화기의 lpc 잔차신호 부호화/복호화 장치
KR101315617B1 (ko) 2008-11-26 2013-10-08 광운대학교 산학협력단 모드 스위칭에 기초하여 윈도우 시퀀스를 처리하는 통합 음성/오디오 부/복호화기
KR101797033B1 (ko) * 2008-12-05 2017-11-14 삼성전자주식회사 부호화 모드를 이용한 음성신호의 부호화/복호화 장치 및 방법
KR101622950B1 (ko) * 2009-01-28 2016-05-23 삼성전자주식회사 오디오 신호의 부호화 및 복호화 방법 및 그 장치
US8457975B2 (en) * 2009-01-28 2013-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program
WO2010125228A1 (en) 2009-04-30 2010-11-04 Nokia Corporation Encoding of multiview audio signals
KR20100136890A (ko) * 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
EP3352168B1 (en) * 2009-06-23 2020-09-16 VoiceAge Corporation Forward time-domain aliasing cancellation with application in weighted or original signal domain
US20110087494A1 (en) * 2009-10-09 2011-04-14 Samsung Electronics Co., Ltd. Apparatus and method of encoding audio signal by switching frequency domain transformation scheme and time domain transformation scheme
KR101137652B1 (ko) * 2009-10-14 2012-04-23 광운대학교 산학협력단 천이 구간에 기초하여 윈도우의 오버랩 영역을 조절하는 통합 음성/오디오 부호화/복호화 장치 및 방법
US9613630B2 (en) * 2009-11-12 2017-04-04 Lg Electronics Inc. Apparatus for processing a signal and method thereof for determining an LPC coding degree based on reduction of a value of LPC residual
EP2524374B1 (en) * 2010-01-13 2018-10-31 Voiceage Corporation Audio decoding with forward time-domain aliasing cancellation using linear-predictive filtering
CN102934161B (zh) * 2010-06-14 2015-08-26 松下电器产业株式会社 音频混合编码装置以及音频混合解码装置
EP4398246A2 (en) * 2010-07-08 2024-07-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decoder using forward aliasing cancellation
AR085445A1 (es) * 2011-03-18 2013-10-02 Fraunhofer Ges Forschung Codificador y decodificador que tiene funcionalidad de configuracion flexible

Also Published As

Publication number Publication date
TWI476758B (zh) 2015-03-11
SG186950A1 (en) 2013-02-28
US20130124215A1 (en) 2013-05-16
AR082142A1 (es) 2012-11-14
JP6417299B2 (ja) 2018-11-07
ES2930103T3 (es) 2022-12-05
JP2021006924A (ja) 2021-01-21
MX2013000086A (es) 2013-02-26
ES2968927T3 (es) 2024-05-14
BR112013000489B1 (pt) 2021-06-01
PL3451333T3 (pl) 2023-01-23
EP4398248A2 (en) 2024-07-10
PT3451333T (pt) 2022-11-22
EP4120248B1 (en) 2023-12-20
JP2013532310A (ja) 2013-08-15
EP4322160A2 (en) 2024-02-14
JP2019032550A (ja) 2019-02-28
JP5981913B2 (ja) 2016-08-31
MY161986A (en) 2017-05-31
AU2011275731A1 (en) 2013-02-21
AU2011275731B2 (en) 2015-01-22
PL2591470T3 (pl) 2019-05-31
EP3451333A1 (en) 2019-03-06
EP4398244A2 (en) 2024-07-10
EP2591470B1 (en) 2018-12-05
EP4372742A2 (en) 2024-05-22
CN103109318B (zh) 2015-08-05
EP4120248A1 (en) 2023-01-18
EP4120248C0 (en) 2023-12-20
CN103109318A (zh) 2013-05-15
JP2023071685A (ja) 2023-05-23
JP6773743B2 (ja) 2020-10-21
KR20130045349A (ko) 2013-05-03
KR101456639B1 (ko) 2014-11-04
JP7488926B2 (ja) 2024-05-22
JP2016006535A (ja) 2016-01-14
CA2804548C (en) 2016-06-21
PT2591470T (pt) 2019-04-08
EP2591470A1 (en) 2013-05-15
WO2012004349A1 (en) 2012-01-12
EP3451333B1 (en) 2022-09-07
BR122021002104B1 (pt) 2021-11-03
EP4398246A2 (en) 2024-07-10
TW201222529A (en) 2012-06-01
JP7227204B2 (ja) 2023-02-21
ES2710554T3 (es) 2019-04-25
RU2013105268A (ru) 2014-08-20
PL4120248T3 (pl) 2024-05-13
EP4322160A3 (en) 2024-05-08
EP4398247A2 (en) 2024-07-10
US9257130B2 (en) 2016-02-09
CA2804548A1 (en) 2012-01-12
EP4398245A2 (en) 2024-07-10

Similar Documents

Publication Publication Date Title
BR122021002034B1 (pt) Codificador que utiliza cancelamento de serrilhado futuro
US11475901B2 (en) Frame loss management in an FD/LPD transition context
BR112013016267B1 (pt) processos de codificação e decodificação de um sinal não numérico, codificador e decodificador de sinal som numérico
ES2972833T3 (es) Métodos y aparatos para mejoras de descodificación unificada de habla y de audio
RU2575809C2 (ru) Кодер, использующий прямое подавление помех дискретизации

Legal Events

Date Code Title Description
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B350 Update of information on the portal [chapter 15.35 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 07/07/2011, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO.