BRPI0906320B1 - Calculadora de contorno de distorção de tempo, codificador de sinal de áudio, representação de sinal de áudio codificado e seus métodos. - Google Patents

Calculadora de contorno de distorção de tempo, codificador de sinal de áudio, representação de sinal de áudio codificado e seus métodos. Download PDF

Info

Publication number
BRPI0906320B1
BRPI0906320B1 BRPI0906320-0A BRPI0906320A BRPI0906320B1 BR PI0906320 B1 BRPI0906320 B1 BR PI0906320B1 BR PI0906320 A BRPI0906320 A BR PI0906320A BR PI0906320 B1 BRPI0906320 B1 BR PI0906320B1
Authority
BR
Brazil
Prior art keywords
time
distortion
contour
time distortion
node
Prior art date
Application number
BRPI0906320-0A
Other languages
English (en)
Inventor
Bayer Stefan
Disch Sascha
Geiger Ralf
Fuchs Guillaume
Neuendorf Max
Schuller Gerald
Edler Bernd
Original Assignee
Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E .V.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=41131685&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BRPI0906320(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E .V. filed Critical Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E .V.
Publication of BRPI0906320A2 publication Critical patent/BRPI0906320A2/pt
Publication of BRPI0906320B1 publication Critical patent/BRPI0906320B1/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
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/04Time compression or expansion
    • 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/032Quantisation or dequantisation of spectral components
    • 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/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • 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/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Stereophonic System (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

calculadora de contorno de distorção de tempo, codificador de sinal de áudio, representação de sinal de áudio codificado, métodos e programa de computador uma calculadora de contorno de distorção de tempo para uso em um decodificador de sinal de áudio para fornecer uma representação de sinal de áudio decodificado com base em uma representação de sinal de áudio codificado é configurada para receber uma informação de proporção de distorção codificada, para derivar uma sequência de valores de proporção de distorção a partir da informação de proporção de distorção codificada, e para obter valores de nó de contorno de distorção começando a partir de um valor inicial de contorno de distorção de tempo. proporções entre os valores de nó de contorno de distorção de tempo e o valor inicial de contorno de distorção de tempo associadas com um nó inicial de contorno de distorção de tempo são determinadas pelos valores de proporção de distorção. a calculadora de contorno de distorção de tempo é configurada para computar um valor de nó de contorno de distorção de tempo de um dado nó de contorno de distorção de tempo, que é espaçado a partir do nó inicial de contorno de distorção de tempo por um nó intermediário de contorno de distorção de tempo com base em uma formação de produto compreendendo uma proporção entre o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo e o valor inicial de contorno de distorção de tempo e uma proporção entre o valor de nó de contorno de distorção de tempo do dado nó de contorno de distorção de tempo e o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo como fatores.

Description

HISTÓRICO DA INVENÇÃO
Configurações de acordo com a invenção estão relacionadas a uma calculadora de contorno de distorção de tempo. Configurações adicionais de acordo com a invenção estão relacionadas a um codificador de sinal de áudio. Configurações adicionais de acordo com a invenção estão relacionadas a uma representação de sinal de áudio codificado. Configurações adicionais de acordo com as invenções estão relacionadas a métodos para fornecer uma representação de sinal de áudio decodificado e para fornecer uma representação codificada de um sinal de áudio. Ainda configurações adicionais de acordo com a invenção estão relacionadas a um programa de computador.
Algumas configurações de acordo com a invenção estão relacionadas com métodos para um codificador de transformação MDCT de tempo distorcido.
A seguir, será fornecida uma breve introdução ao campo do codificador de áudio de tempo distorcido, conceitos dos quais podem ser aplicados em conjunto com algumas das configurações da invenção.
Nos anos recentes, foram desenvolvidas técnicas para transformar um sinal de áudio em uma representação de domínio de frequência, e para codificar eficientemente esta representação de domínio de frequência, por exemplo, levando em conta limiares de máscar a conceituais. Este conceito de codificação de sinal de áudio é particularmente eficiente se os comprimentos de bloco, para o qual um conjunto de coeficientes espectrais são transmitidos, forem longos, e se apenas um número comparativamente pequeno de coeficientes espectrais estiverem bem acima do limiar de máscara global enquanto um grande número de coeficientes 5 espectrais estiverem próximos ou abaixo do limiar de máscara global e puderem ser desprezados (ou codificados com duração de código minima).
Por exemplo, transformadas ciclicas moduladas baseadas em senos e cossenos são frequentemente usadas em 10 aplicações para codificação de fonte devido às suas propriedades de compactação de energia. Isto é, para tons harmônicos com frequências fundamentais constantes (passo), elas concentram a energia sinal em um pequeno número de—comperten-tes—expect rails (sufF- bandas), o que leva a uma representação sinal eficiente.
Geralmente, o passo (fundamental) de um sinal deve ser entendido como sendo a menor frequência dominante distinguível de um espectro do sinal. No modelo do discurso comum, o passo é a frequência do sinal de excitação modulada pela garganta humana. Se apenas uma única frequência fundamental 20 estivesse presente, o espectro seria extremamente simples, compreendendo a frequência fundamental e os sobretons apenas. Tal espectro poderia ser codificado com grande eficiência. Para sinais com passo variável, contudo, a energia correspondente a cada componente harmônico é espalhada por diversos coeficientes de 25 transformada, desta forma levando a uma redução da eficiência de codificação.
A fim de contornar esta redução da eficiência de codificação, o sinal de áudio a ser codificado é efetivamente reamostrado em uma grade temporal não-uniforme. No processamento subsequente, as posições de amostra obtidas pela reamostragem não- uniforme são processadas como se representassem valores em uma grade temporal uniforme. Esta operação é comumente denotada pela 5 frase "distorção de tempo". Os tempos de amostra podem ser escolhidos com vantagem na dependência da variação temporal do passo, tal que uma variação de passo na versão de tempo distorcido do sinal de áudio é menor do que uma variação de passo na versão original do sinal de áudio (antes da distorção de tempo) . Após a distorção de tempo do sinal de áudio, a versão de tempo distorcido do sinal de áudio é convertida no domínio de frequência. A distorção de tempo dependente do passo tem o efeito que a representação do domínio de frequência__d.o—si-na-1—de—áudio de tempo” distorcido é tipicamente concentrada em um número muito menor de 15 componentes espectrais do que uma representação do domínio de frequência do sinal de áudio original (tempo não-distorcido).
No lado do decodificador, a representação do domínio de frequência do sinal de áudio de tempo distorcido é convertida de volta ao domínio de tempo, de tal forma que uma 20 representação do domínio de tempo do sinal de áudio de tempo distorcido está disponível no lado do decodificador. Entretanto, na representação do domínio de tempo do sinal de áudio de tempo distorcido reconstruído do lado do decodificador, as variações de passo originais do sinal de áudio de entrada no lado do decodificador não são incluídas. Da mesma forma, ainda outra distorção de tempo por reamostragem da representação do sinal de áudio de tempo distorcido do domínio de tempo reconstruído pelo lado do decodif icador é aplicada. A fim de obter uma boa reconstrução do sinal de áudio de entrada pelo lado do codificador no decodificador, é desejável que a distorção de tempo no lado do decodificador seja pelo menos aproximadamente a operação inversa com respeito à distorção de tempo do lado do codificador. A fim de 5 obter uma distorção de tempo apropriada, é desejável ter uma informação disponível no decodificador que permita um ajuste da distorção de tempo do lado do decodificador.
Como é tipicamente necessário transferir tal informação do codificador de sinal de áudio para o decodificador 10 de sinal de áudio, é desejável manter uma taxa de bits necessária para esta transmissão pequena enquanto ainda se disponibiliza uma reconstrução confiável da informação necessária de distorção de tempo no lado do de codificador.
Em vista da discussão acima, há um desejo de ter um conceito que permita uma reconstrução eficiente de uma informação de distorção de tempo com base em uma representação eficientemente codificada da informação de distorção de tempo.
SUMÁRIO DA INVENÇÃO
Uma configuração de acordo com a invenção cria uma calculadora de contorno de distorção de tempo para uso em um decodificador de sinal de áudio para fornecer uma representação de sinal de áudio decodificado com base em uma representação de sinal de áudio codificado. A calculadora de contorno de distorção de tempo é configurada para receber uma informação de proporção de distorção codificada, para derivar uma sequência de valores de proporção de distorção a partir da informação de proporção de distorção codificada, e para obter valores de nó de contorno de distorção começando a partir de um valor inicial de contorno de v distorção de tempo. As proporções entre os valores de nó de contorno de distorção de tempo (isto é valores de nós de contorno de distorção de tempo diferentes do nó inicial de contorno de distorção de tempo) e do valor inicial de contorno de distorção de 5 tempo associado com um nó inicial de contorno de distorção de tempo são determinados pelos valores de proporção de distorção. A calculadora de contorno de distorção de tempo é configurada para computar um valor de nó de contorno de distorção de tempo de um dado nó de contorno de distorção de tempo, que é espaçado a partir do nó inicial de contorno de distorção de tempo por um nó intermediário de contorno de distorção de tempo, com base em uma formação de produto compreendendo uma proporção entre o valor de nó de contorno de distorção de tempo—de—nó—i rrtrerme d i áriÕde contorno de distorção de tempo e o valor inicial de contorno de distorção de tempo e uma proporção entre o valor de nó de contorno de distorção de tempo do dado nó de contorno de distorção de tempo e o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo como fatores.
Esta configuração da invenção baseia-se na idéia- chave de que uma codificação eficiente de um contorno de distorção de tempo pode ser obtida se proporções entre subsequentes valores de nó de contorno de tempo forem codificadas na forma de uma informação de proporção de distorção codificada. Descobriu-se que uma mudança relativa (isto é proporção) entre valores de nó (de 25 contorno de distorção de tempo) de dois nós de contorno de distorção de tempo subsequentes é uma quantidade que pode ser codificada em uma forma com eficiência de bits sem seriamente degradar uma reconstrução do contorno de distorção de tempo. Por v exemplo, descobriu-se que proporções entre valores de nó de contorno de distorção de tempo de subsequentes nós de contorno de distorção de tempo tipicamente cobrem a mesma gama de valores independentemente do valor absoluto do contorno de distorção de tempo, tal que a codificação dos valores de proporção de distorção pode ser escolhida independente de um valor absoluto atual do contorno de distorção de tempo. Os valores de nó de contorno de distorção de tempo são computados com base em uma formação de produto, tal que um valor de nó de contorno de distorção de tempo de um novo nó de contorno de distorção de tempo é derivado a partir de um valor de nó de um nó anterior de contorno de distorção de tempo por uma formação de produto (isto é multiplicação) . Desta forma, garante-se qim uma—difor^ença—relativa entre valores de nó de contorno de distorção de tempo de subsequentes nós de contorno de distorção de tempo esteja dentro de uma gama de valores predeterminados, em que a gama de valores predeterminados é determinada pelos valores de proporção de distorção codificada. Da mesma forma, garante-se que o contorno de distorção de tempo não compreenda descontinuidades indesejavelmente grandes (passos), que resultariam em uma distorção audivel.
Adicionalmente, descobriu-se que operações complicadas de ajuste de curva podem ser evitadas computando-se valores de nó de contorno de distorção de tempo de subsequentes 25 nós de contorno de distorção de tempo usando uma formação de produto. Da mesma forma, a complexidade do decodificador pode ser mantida comparativamente pequena. Em particular, um número de operações matemáticas dificeis de implementar (por exemplo h: operações de divisão) pode ser mantido suficientemente pequeno. I , ,
Para resumir o que foi referido acima, a configuração descrita de acordo com a invenção permite uma eficiente e precisa reconstrução do contorno de distorção de 5 tempo, aproveitando o fato de que a mudança relativa do contorno de distorção de tempo entre subsequentes nós de contorno de distorção de tempo é tipicamente limitada a uma pequena gama de valores, que pode ser descrita com suficiente precisão pela informação de proporção de distorção de tempo codificada (também 10 abreviadamente designada aqui como informação de proporção de distorção), mesmo se um pequeno número de bits (por exemplo, 3 bits, ou 4 bits) for usado para a codificação dos valores de proporção de distorção. O cômputo dos vaiQ-r.es—de—nó—der-corrE^rnõ~~dê^ distorção de tempo é computacionalmente eficiente e garante uma 15 continuidade psico-acusticamente suficiente do contorno de distorção de tempo.
Em uma configuração preferida, a calculadora de contorno de distorção de tempo é configurada para periodicamente reiniciar a partir do valor inicial de contorno de distorção de tempo. Ao realizar um reinicio periódico a partir do valor inicial de contorno de distorção de tempo, pode-se concluir que a gama de valores do contorno de distorção de tempo é limitada a valores em um ambiente do valor inicial de contorno de distorção de tempo. Da mesma forma, a complexidade exigida da calculadora de contorno de 25 distorção de tempo pode ser mantida pequena e é muito bem controlável, pois o desvio dos valores de nó de contorno de distorção de tempo a partir do valor inicial de contorno de distorção de tempo é limitado pela gama de valores dos valores de k proporção de distorção e o número de nós de contorno de distorção de tempo entre dois reinicios subsequentes. Desta forma, um underflow numérico ou estouro numérico pode ser seguramente prevenido, mesmo se a calculadora de contorno de distorção de tempo compreender uma resolução numérica ou gama de valores numéricos relativamente pequena (o que permite uma implementação simples).
Em uma configuração preferida, a calculadora de contorno de distorção de tempo é configurada para mapear a 10 informação de proporção de distorção codificada na sequência de valores de proporção de distorção usando uma regra de mapeamento, em que a regra de mapeamento descreve um mapeamento de uma pluralidade de indices de livro de c_ó.dig^©-s de—proporção de distorção sobre valores correspondentes de proporção de distorção, e em que a regra de mapeamento é escolhida tal que a regra de mapeamento compreenda uma pluralidade de pares de valores reciprocos de proporção de distorção, tal que um produto de dois valores de proporção de distorção de um par de valores reciprocos de proporção de distorção fica entre 0,9997 e 1,0003. Tal 20 codificação dos valores de proporção de distorção permite uma precisa representação de contornos de distorção de tempo que retornam a um valor prévio. Descobriu-se que em alguns casos é desejável que um contorno de distorção de tempo se desvie de um valor inicial por um instante (por exemplo, para uma pluralidade 25 de nós de contorno de distorção de tempo) e então retorne ao valor inicial. Também, descobriu-se que distorções audiveis podem ocorrer se o valor, que o contorno de distorção de tempo finalmente alcança, se desviar do valor inicial. Não obstante, fornecendo pares de valores recíprocos de proporção de distorção pode-se concluir que um contorno de distorção de tempo retorna ao seu valor inicial com uma precisão muito alta. Da mesma forma, potenciais artefatos audíveis, que poderiam surgir de uma inconsistência entre um valor inicial de nó de contorno de distorção de tempo e um valor de nó de contorno de distorção de tempo ao qual o contorno de distorção de tempo retorna após um instante, são prevenidos.
Em uma configuração preferida, a calculadora de contorno de distorção de tempo é configurada para mapear a informação de proporção de distorção codificada sobre uma sequência de valores de proporção de distorção usando uma regra de mapeamento, em que a regra de mapeamento des-creve—e—m-apeunrerTtõ dê" uma pluralidade de índices de livro de códigos de proporção de 15 distorção sobre valores correspondentes de proporção de distorção, em que a regra de mapeamento é escolhida tal que os valores de proporção de distorção, sobre os quais os índices de livro de códigos de proporção de distorção são mapeados, estejam dentro de uma variação entre 0,97 e 1,03. Descobriu-se que tal escolha 20 permite uma descrição suficientemente precisa do contorno de distorção de tempo ao manter a taxa necessária de transferência de bits para a codificação da proporção de distorção suficientemente pequena. preferida, a calculadora de contorno de distorção de tempo é configurada para mapear a informação de proporção de distorção codificada sobre uma sequência de valores de proporção de distorção usando uma regra de mapeamento, em que a regra de mapeamento descreve o mapeamento de S. uma pluralidade de indices de livro de códigos de proporção de distorção sobre valores correspondentes de proporção de distorção, e em que a regra de mapeamento é escolhida assimetricamente, tal que uma gama de valores crescentes de proporção de distorção é 5 maior do que uma gama de valores decrescentes de proporção de distorção. Descobriu-se que tal escolha da regra de mapeamento é bem adaptada às características da fala humana e de peças musicais tipicas. Da mesma forma, uma escolha assimétrica da regra de mapeamento permite um uso ótimo da taxa de transferência de bits 10 disponível, que é um critério muito importante no campo de codificação de áudio e decodificação de áudio.
Em uma configuração preferida, a calculadora de contorno de distorção de tempo é configurada paura—ee^ebe-r uma- i-rrfcrrmãção lateral indicando um contorno de distorção de tempo 15 não-variável (por exemplo, plano) ou um contorno de distorção de tempo variável (por exemplo, não-plano) para uma dada estrutura da representação de sinal de áudio codificado, e, na dependência da informação lateral indicando um contorno de distorção de tempo não-variável ou um contorno de distorção de tempo variável, para 20 obter os valores de nó de contorno de distorção de tempo para a dada estrutura com base na informação de proporção de distorção codificada, ou para estabelecer os valores de nó de contorno de distorção de tempo para a dada estrutura ao valor inicial de contorno de distorção de tempo. Nesta configuração, uma 25 transferência de qualquer informação de proporção de distorção de tempo codificada para a calculadora de contorno de distorção de tempo pode ser omitida para estruturas em que a informação lateral indica a presença de um contorno de distorção de tempo não- variável. Da mesma forma, estruturas de áudio em que o contorno de distorção de tempo é não-variável (ou para as quais um contorno de distorção de tempo variável não pode ser identificado), meramente compreendem um flag apropriado indicando que este 5 contorno de distorção de tempo não-variável (ou a ausência de um contorno de distorção de tempo variável) . Em contraste, estruturas de áudio em que o contorno de distorção de tempo é variável compreendem um flag indicando que o contorno de distorção de tempo não é não-variável e, além disso, a 10 informação de proporção de distorção de tempo codificada. Desta forma, enquanto estruturas de áudio compreendendo um contorno de distorção de tempo variável compreendem um flag adicional, por exemplo um bit, além da informação de_ cp-topo-r-ç-ã-o- 'de' —dirsrttrrçao de tempo codificada, estruturas de áudio em que o 15 contorno de distorção de tempo é não-variável meramente compreendem um flag (por exemplo, um bit) , porém não compreendem a informação de proporção de distorção codificada.
Como há tipicamente um percentual significativo de estruturas em que o contorno de distorção de tempo é não-variável (ou um 20 contorno de distorção de tempo variável não pode ser identificado), um número de bits exigidos para a descrição do contorno de distorção de tempo é tipicamente reduzido quando comparado a uma solução em que a informação de proporção de distorção de tempo codificada é transmitida para toda estrutura 25 de áudio, muito embora a contagem de bits da informação de contorno de distorção de tempo seja até aumentada (por exemplo, por um bit) naquelas estruturas em que o contorno de distorção de tempo seja variável.
Em uma configuração preferida, a calculadora de contorno de distorção de tempo é configurada para interpolar linearmente entre os valores de nó de contorno de distorção de tempo, para obter valores de contorno de distorção de tempo de 5 novas porções de contorno de distorção de tempo. Ao realizar tal interpolação, pode-se obter uma exatidão aumentada da reconstrução do contorno de distorção de tempo.
Em uma configuração preferida, a calculadora de contorno de distorção de tempo é configurada para iterativamente 10 obter uma sequência de valores de nó de contorno de distorção de tempo, em que a calculadora de contorno de distorção de tempo é configurada para obter um subsequente valor de nó de contorno de distorção de tempo a partir de um valor de nó de_ contorno—' de —di-s-torção^de" tempo presente multiplicando-se o valor de nó de 15 contorno de distorção de tempo presente com um valor de proporção de distorção de tempo correspondente. Desta forma, pode-se fazer um uso eficiente dos valores de proporção de distorção de tempo. Em particular, um valor de nó de contorno de distorção de tempo pode ser obtido a partir de um valor prévio de nó de contorno de 20 distorção de tempo em uma operação de passo único.
Outra configuração de acordo com a invenção cria um codificador de sinal de áudio para fornecer uma representação codificada de um sinal de áudio. O codificador de sinal de áudio compreende um codificador de contorno de distorção de tempo 25 configurado para receber uma informação de contorno de distorção de tempo associada com o sinal de áudio, para computar uma proporção entre subsequentes valores de nó do contorno de distorção de tempo, e para codificar a proporção entre t subsequentes valores de nó do contorno de distorção de tempo. O codificador de sinal de áudio adicionalmente compreende um codificador de sinal de distorção de tempo configurado para obter uma representação codificada de um espectro do sinal de áudio, 5 levando em conta uma distorção de tempo descrita pela informação de contorno de distorção de tempo. A representação de áudio codificado do sinal de áudio compreende a proporção codificada (entre subsequentes valores de nó do contorno de distorção de tempo) e a representação codificada do espectro do sinal de áudio. ! 10 o codificador de sinal de áudio de acordo com esta configuração fornece uma representação codificada do sinal de áudio, que é bem ajustado para o cálculo pelo lado do codificador de um contorno de distorção de tempo, que foi descrito acima. Por -exemp-Le-r— 'trip_r cãméii tê possível codificar ã” proporção”Zntre subsequentes 15 valores de nó do contorno de distorção de tempo com boa precisão usando um pequeno número de bits. Como discutido acima, a proporção entre • subsequentes valores de nó do contorno de distorção de tempo está tipicamente dentro da mesma gama de
I valores, tanto para pequenos valores absolutos do contorno de distorção de tempo como para grandes valores absolutos do contorno de distorção de tempo. Adicionalmente, o cômputo de uma proporção entre subsequentes valores de nó do contorno de distorção de tempo pode ser realizado com complexidade computacional muito baixa, assim facilitando o projeto do codificador de sinal de áudio.
Em uma configuração preferida, o codificador de contorno de distorção de tempo é configurado para checar se um contorno de distorção de tempo variável está disponível para uma dada estrutura do sinal de áudio, e para estabelecer um flag \ dentro da representação codificada do sinal de áudio para indicar a ausência de um contorno de distorção de tempo variável se um contorno de distorção de tempo variável não estiver disponivel para a dada estrutura do sinal de áudio. Por exemplo, um flag indicando a presença de um contorno de distorção de tempo variável pode ser desativado (ou restabelecido) neste caso. O codificador de contorno de distorção de tempo é também configurado para omitir a inclusão de valores de proporção codificada na representação codificada do sinal de áudio se um contorno de distorção de tempo variável não estiver disponivel para a dada estrutura do sinal de áudio. Desta forma, uma taxa de transferência de bits é minimizada para sinais de áudio que tenham um significativo número de estruturas para as quais um contorno de distor_c.ã-Q-—-de—-temper"" vaxiá-ve4r--rrãr>"SsTê~Tã disponivel^ Deve-senotar aqui que um contorno de distorção de tempo variável é tipicamente não disponível para sinais de áudio, em que há um contorno de distorção de tempo não- variável, e também para sinais de áudio para os quais a extração de um contorno de distorção de tempo falha (ou não traz um resultado significativo) . Como já discutido acima, o uso de um 20 flag indicando a presença ou ausência de um contorno de distorção de tempo variável, permite uma redução da taxa de transferência de bits exigida para a codificação do contorno de distorção de tempo para sinais de áudio típicos.
Outra configuração de acordo com a invenção cria 25 uma representação de sinal de áudio codificado representando um sinal de áudio. A representação de sinal de áudio codificado compreende uma representação de domínio de frequências codificada representando um ou mais canais de áudio re-amostrados Para v distorção de tempo, re-amostrados de acordo com uma distorção de tempo. A representação de sinal de áudio codificado também compreende uma representação codificada de um contorno de distorção de tempo representando a distorção de tempo, em que a representação codificada do contorno de distorção de tempo compreende uma pluralidade de valores de proporção de distorção de tempo codificados. Os valores de proporção de distorção de tempo representam proporções entre subsequentes valores de nó do contorno de distorção de tempo. Tal representação de sinal de ’ 10 áudio codificado transporta a informação de distorção de tempo em uma forma particularmente eficiente e permite o uso da eficiente calculadora de contorno de distorção de tempo descrita acima.
Em uma configuração preferida, a representação-de sina-l—de—áudio codificado compreende, conforme uma estrutura de áudio, um flag indicando a presença de uma representação codificada de um contorno de distorção de tempo para a respectiva estrutura.
Outra configuração de acordo com a invenção compreende um método para fornecer uma representação de sinal de 20 áudio decodificado com base em uma representação de sinal de áudio codificado. O método compreende o recebimento de uma informação de proporção de distorção codificada, derivando uma sequência de valores de proporção de distorção a partir da informação de proporção de distorção codificada e obtenção de uma pluralidade de 25 valores de nó de contorno de distorção começando a partir de um valor inicial de contorno de distorção. Proporções entre valores de nó de contorno de distorção de tempo (de nós de contorno de distorção de tempo diferentes do nó inicial de contorno de distorção de tempo) e o valor inicial de contorno de distorção de tempo associado com o nó inicial de contorno de distorção de tempo são determinados pelos valores de proporção de distorção de tempo. 0 valor de nó de contorno de distorção de tempo de um dado nó de contorno de distorção de tempo, que é espaçado a partir do nó inicial de contorno de distorção de tempo por um nó intermediário de contorno de distorção de tempo, é computado com base em uma formação de produto, compreendendo uma proporção entre o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo e o valor inicial de contorno de distorção de tempo e uma proporção entre o valor de nó de contorno de distorção de tempo do dado nó de contorno de distorção de tempo e o valor de nó de contorno de distorção de tempo—-do-—né- _______iu.termedi-árro^dê cõntcírw-^de^dTstprçãõ^de tempo como fatores. Este método compreende as mesmas vantagens que a calculadora de contorno de distorção de tempo discutida acima e pode ser suplementado pelos mesmos aspectos e funcionalidades que a calculadora de contorno de distorção de tempo aqui descrita.
Uma configuração da invenção cria um método para fornecer uma representação codificada de um sinal de áudio. O método compreende a recepção de uma informação de contorno de distorção de tempo associada com o sinal de áudio, o cômputo de uma proporção entre subsequentes valores de nó do contorno de distorção de tempo e a codificação da proporção entre subsequentes valores de nó do contorno de distorção de tempo. O método também compreende a obtenção de uma representação codificada de um espectro do sinal de áudio, levando em conta uma distorção de tempo descrita pela informação de distorção de tempo. A representação codificada do sinal de áudio compreende a proporção codificada e a representação codificada do espectro. Este método compreende as mesmas vantagens que o decodif icador de sinal de áudio mencionado acima, e pode ser suplementado por quaisquer dos 5 aspectos e funcionalidades aqui descritos com respeito ao codificador de sinal de áudio.
Outra configuração de acordo com a invenção cria um programa de computador para executar os métodos aqui descritos.
Outra configuração de acordo com a invenção cria um decodificador de sinal de áudio compreendendo a calculadora de contorno de distorção de tempo mencionada acima. O decodificador de sinal de áudio pode ser suplementado por quaisquer dos aspectcis- e fun_ci.onajri-d-a-de~s ãqúi descritos .
BREVE DESCRIÇÃO DAS FIGURAS
Configurações de acordo com a invenção serão descritas a seguir tomando referência às figuras inclusas, nas quais: A Figura 1 mostra um diagrama esquemático de 20 blocos de um codificador de áudio de distorção de tempo; A Figura 2 mostra um diagrama esquemático de blocos de um decodificador de áudio de distorção de tempo; A Figura 3 mostra um diagrama esquemático de blocos de um decodificador de sinal de áudio, de acordo com uma 25 configuração da invenção; A Figura 4 mostra um fluxograma de um método para fornecer uma representação de sinal de áudio decodificado, de acordo com uma configuração da invenção; K A Figura 5 mostra um extrato detalhado de um diagrama esquemático de blocos de um decodificador de sinal de áudio de acordo com uma configuração da invenção; A Figura 6 mostra um extrato detalhado de um 5 fluxograma de um método para fornecer uma representação de sinal de áudio decodificado de acordo com uma configuração da invenção; As Figuras 7a,7b mostram uma representação gráfica de uma reconstrução de um contorno de distorção de tempo, 10 de acordo com uma configuração da invenção; A Figura 8 mostra outra representação gráfica de uma reconstrução de um contorno de distorção de tempo, de acordo com uma configuração da invenção; As Figuras 9a e 9b mostram algoritmos para o 15 cálculo do contorno de distorção de tempo; A Figura 9c mostra uma tabela de mapeamento a partir de um indice de proporção de distorção de tempo até um valor de proporção de distorção de tempo; As Figuras 10a e 10b mostram representações de 20 algoritmos para o cálculo de um contorno de tempo, uma posição de amostra, um comprimento de transição, uma "primeira posição" e uma "última posição"; A Figura 10c mostra uma representação de algoritmos para um cálculo de forma de janela; As Figuras 10d e 10e mostram uma representação de algoritmos para uma aplicação de uma janela; A Figura 10f mostra uma representação de algoritmos para uma reamostragem de tempo variável; A Figura 10g mostra uma representação gráfica de algoritmos para um processamento de estrutura pós-distorção de tempo e para uma sobreposição e soma; As Figuras 11a e 11b mostram uma legenda; A Figura 12 mostra uma representação gráfica de um contorno de tempo, que pode ser extraido de um contorno de distorção de tempo; A Figura 13 mostra um diagrama esquemático de blocos detalhado de um aparelho para fornecer um contorno de 10 distorção, de acordo com uma configuração da invenção; A Figura 14 mostra um diagrama esquemático de blocos de um decodificador de sinal de áudio, de acordo com outra configuração da invenção; A Figura 15 mostra um diagrama esquemático de blocos de outra calculadora de contorno de distorção de tempo de acordo com uma configuração da invenção; As Figuras 16a, 16b mostram uma representação gráfica de um cômputo de valores de nó de distorção de tempo, de P acordo com uma configuração da invenção; A Figura 17 mostra um diagrama esquemático de blocos de outro codificador de sinal de áudio, de acordo com uma configuração da invenção; A Figura 18 mostra um diagrama esquemático de blocos de outro decodificador de sinal de áudio, de acordo com uma configuração da invenção; e As Figuras 19a-19f mostram representações de elementos de sintaxe de um stream de áudio, de acordo com uma configuração da invenção; DESCRIÇÃO DETALHADA DAS CONFIGURAÇÕES 1. CODIFICADOR DE ÁUDIO DE DISTORÇÃO DE TEMPO DE ACORDO COM A FIGURA 1 a presente invenção está relacionada com a codificação de áudio de distorção de tempo e decodificação de áudio de distorção de tempo, uma breve visão geral será apresentada de um protótipo de codificador de áudio de distorção de tempo e um decodificador de áudio de distorção de tempo, em que a presente invenção pode ser aplicada. A Figura 1 mostra um diagrama esquemático de blocos de um codificador de áudio de distorção de tempo, no qual alguns aspectos e configurações da invenção podem ser integrados. O—co<±Lf-£cadan-de_SLÍiial_d.e _áudio 100 da Figura 1 é configurado para receber um sinal de entrada de áudio 110 e para fornecer uma 15 representação codificada do sinal de entrada de áudio 110 em uma sequência de estruturas. O codificador de áudio 100 compreende um amostrador 104, que é adaptado para amostrar o sinal de áudio 110 (sinal de entrada) para derivar blocos de sinais (representações amostradas) 105 usados como base para uma transformação de dominio 20 de frequência. O codificador de áudio 100 compreende adicionalmente uma calculadora de janela de transformada 106, adaptada para derivar janelas de escalação para a saida de representações amostradas 105 do amostrador 104. Estas são inseridas em um windower 108 que é adaptado para aplicar as 25 janelas de escalação às representações amostradas 105 derivadas pelo amostrador 104. Em algumas configurações, o codificador de áudio 100 pode adicionalmente compreender um transformador de domínio de frequência (por exemplo, na forma de coeficientes de transformada) das representações amostradas e escaladas 105. As representações de domínio de frequência podem ser processadas ou adicionalmente transmitidas como uma representação codificada do 5 sinal de áudio 110.
O codificador de áudio 100 adicionalmente usa um contorno de passo 112 do sinal de áudio 110, que pode ser fornecido ao codificador de áudio 100 ou que pode ser derivado pelo codificador de áudio 100. O codificador de áudio 100 pode portanto opcionalmente compreender um estimador de passo para derivar o contorno de passo 112. O amostrador 104 pode operar em uma representação contínua do sinal de entrada de áudio 110. .o amostrador 104 pode operar em uma representação já amostrada do sinal de entrada de áudio 110. No 15 último caso, o amostrador 104 pode reamostrar o sinal de áudio 110. O amostrador 104 pode, por exemplo, ser adaptado para distorção de tempo próxima a blocos de áudio sobreponentes tal que a porção de sobreposição tenha um passo constante ou variação de passo reduzida dentro de cada um dos blocos de entrada após a amostragem. de janela de transformada 106 deriva as janelas de escalação para os blocos de áudio dependendo da distorção de tempo realizada pelo amostrador 104. Para este fim, um bloco de ajuste de taxa de amostragem opcional 114 pode 25 estar presente a fim de definir uma regra de distorção de tempo usada pelo amostrador, que é então também fornecida para a calculadora de janela de transformada 106. Em uma configuração alternativa, o bloco de ajuste de taxa de amostragem 114 pode ser omitido e o contorno de passo 112 pode ser diretamente fornecido para a calculadora de janela de transformada 106, que pode ela mesma realizar os cálculos apropriados. Além disso, o amostrador 104 pode comunicar a amostragem aplicada à calculadora de janela 5 de transformada 106 a fim de habilitar o cálculo de janelas de escalação apropriadas.
A distorção de tempo é realizada tal que um contorno de passo tempo distorcido de blocos de áudio amostrados e amostrados pelo amostrador 104 não seja mais constante do que o " 10 contorno de passo do sinal de áudio original 110 dentro do bloco de entrada. 2. DECODIFICADOR DE ÁUDIO DE DISTORÇÃO DE TEMPO DE ACORDO COM A FIGURA 2 A Figura 2 mostra um diagrama esquemático de blocos de um decodificador de áudio de distorção de tempo 200 para processar um primeiro tempo distorcido e amostrado, ou simplesmente representação de tempo distorcido de uma primeira e segunda estrutura de um sinal de áudio tendo uma sequência de F estruturas em que a segunda estrutura segue a primeira estrutura e para adicionalmente processar uma segunda representação de tempo distorcido da segunda estrutura e de uma terceira estrutura seguindo a segunda estrutura na sequência de estruturas. O decodificador de áudio 200 compreende uma calculadora de janela de transformada 210 adaptada para derivar uma primeira janela de escalação para a primeira representação de tempo distorcido 211a usando informação sobre um contorno de passo 212 da primeira e segunda estrutura e para derivar uma segunda janela de escalação informação sobre um contorno de passo da segunda e terceira estrutura, em que as janelas de escalação podem ter números idênticos de amostras e em que o primeiro número de amostras usadas para fechar a primeira janela de escalação podem diferir de 5 um segundo número de amostras usadas para abrir a segunda janela de escalação. O decodificador de áudio 200 adicionalmente compreende um windower 216 adaptado para aplicar a primeira janela de escalação à primeira representação de distorção de tempo e para aplicar a segunda janela de escalação à segunda representação de 10 tempo distorcido. O decodificador de áudio 200, além disso, compreende um reamostrador 218 adaptado para distorcer inversamente o tempo na primeira representação escalada de tempo distorcido para derivar uma primeira representação amostrada usando a informação sobre o contorno de passo da primeira e 15 segunda estrutura e para distorcer inversamente o tempo na segunda representação escalada para derivar uma segunda representação amostrada usando a informação sobre o contorno de passo da segunda e terceira estrutura tal que uma porção da primeira representação amostrada correspondente à segunda estrutura compreende um 20 contorno de passo que iguala, dentro de uma faixa de tolerância predeterminada, um contorno de passo da porção da segunda representação amostrada correspondente à segunda estrutura. A fim de derivar a janela de escalação, a calculadora de janela de transformada 210 pode ou receber o contorno de passo 212 diretamente 25 ou receber informação sobre a distorção de tempo a partir de um ajustador de taxa de amostra opcional 220, que recebe o contorno de passo 212 e que deriva uma estratégia inversa de distorção de tempo de tal maneira que as posições de amostra em uma escala de tempo linear para as amostras das regiões de sobreposição sejam idênticas ou quase idênticas e regularmente espaçadas, de modo que o passo se torne o mesmo nas regiões de sobreposição, e opcionalmente as durações de desvanecimento diferentes de partes de sobreposição de janela antes da distorção de tempo inversa se tornam de mesmo comprimento após a distorção de tempo inversa. O decodificador de áudio 200, além disso, compreende um adicionador opcional 230, que é adaptado para adicionar a porção da primeira representação amostrada 10 correspondente à segunda estrutura e a porção da segunda representação amostrada correspondente à segunda estrutura para derivar uma representação reconstruída da segunda estrutura do sinal de__á.ud±o como um s.ína.1 de s-aída 2-4-2-. A primeira. representação de tempo distorcido e a segunda representação de 15 tempo distorcido poderiam, em uma configuração, ser fornecidas como uma entrada para o decodif icador de áudio 200. Em uma configuração adicional, o decodificador de áudio 200 pode, opcionalmente, compreender um transformador de domínio de frequência inversa 240, que pode derivar a primeira e segunda 20 representações de tempo distorcido a partir de representações de domínio de frequência da primeira e segunda representações de tempo distorcido fornecidas para a entrada do transformador de domínio de frequência inversa 240. 3. DECODIFICADOR DE DISTORÇÃO DE TEMPO DE SINAL 25 DE ÁUDIO DE ACORDO COM A FIGURA 3
A seguir, será descrito um decodificador de sinal de áudio simplificado. A Figura 3 mostra um diagrama esquemático de blocos deste decodificador de sinal de áudio simplificado 300.
O decodificador de sinal de áudio 300 é configurado para receber a representação de sinal de áudio codificado 310, e para fornecer, com base nela, uma representação de sinal de áudio decodificado 312, em que a representação de sinal de áudio codificado 310 5 compreende uma informação de evolução de contorno de distorção de tempo. O decodificador de sinal de áudio 300 compreende uma calculadora de contorno de distorção de tempo 320 configurada para gerar dados de contorno de distorção de tempo 322 com base na informação de evolução de contorno de distorção de tempo, 10 informação de evolução de contorno de distorção de tempo esta que descreve uma evolução temporal do contorno de distorção de tempo, e informação de evolução de contorno de distorção de tempo esta que é composta pela repre.senba.çã.0 de—sinal—de—áudio—eod-i-üeado- 310. Ao derivar os dados de contorno de distorção de tempo 322 a 15 partir da informação de evolução de contorno de distorção de tempo 312, a calculadora de contorno de distorção de tempo 320 repetidamente reinicia a partir de um valor inicial de contorno de distorção de tempo predeterminado, como será descrito em detalhes a seguir. O reinicio pode ter a consequência de que o contorno de 20 distorção de tempo compreenda descontinuidades (mudanças step-wise que são maiores do que os passos codificados pela informação de evolução de contorno de distorção de tempo 312) . O decodificador de sinal de áudio 300 também compreende dados de rescalador de contorno de distorção de tempo 330 que são configurados para rescalar pelo 25 menos uma porção dos dados de contorno de distorção de tempo 322, tal que uma descontinuidade em um reinicio do cálculo do contorno de distorção de tempo seja evitada, reduzida ou eliminada em uma versão rescalada 332 do contorno de distorção de tempo.
O decodificador de sinal de áudio 300 também • compreende um decodificador de distorção 340 configurado para % b prover uma representação de sinal de áudio decodificado 312 com base na representação de sinal de áudio codificado 310 e usando a 5 versão rescalada 332 do contorno de distorção de tempo.
Para colocar o decodificador de sinal de áudio 300 no contexto de decodificação de áudio de distorção de tempo, deve-se notar que a representação de sinal de áudio codificado 310 pode compreender uma representação codificada dos coeficientes de 10 transformada 211 e também uma representação codificada do contorno de passo 212 (também chamada de contorno de distorção de tempo) . A calculadora de contorno de distorção de tempo 320 e os dados de rescalador de contorno de distnrçãa de tempo 33-0 pedem se-r- configurados para prover uma representação reconstruída do contorno 15 de passo 212 na forma da versão rescalada 332 do contorno de distorção de tempo. O decodificador de distorção 340 pode, por exemplo, assumir a funcionalidade da janela 216, a reamostragem 218, o ajuste da taxa de amostra 220 e o ajuste da forma de janela 210.
I Além disso, o decodificador de distorção 340 pode, por exemplo, opcionalmente, compreender a funcionalidade da transformada inversa 240 e da sobreposição/soma 230, tal que a representação de sinal de áudio decodificado 312 possa ser equivalente ao sinal de saida de áudio 232 do decodificador de áudio de distorção de tempo 200.
Aplicando a rescalação dos dados de contorno de 25 distorção de tempo 322, uma versão rescalada 332 continua (ou pelo menos aproximadamente continua) do contorno de distorção de tempo pode ser obtida, assim garantindo que um estouro ou underflow numérico seja evitado mesmo quando usando uma informação de t evolução de contorno de distorção de tempo de variação relativa • eficiente para codificar. 4. MÉTODO PARA FORNECER UMA REPRESENTAÇÃO DE SINAL DE ÁUDIO DECODIFICADO DE ACORDO COM A FIGURA 4 . A Figura 4 mostra um fluxograma de um método para fornecer uma representação de sinal de áudio decodificado com base em uma representação de sinal de áudio codificado compreendendo uma informação de evolução de contorno de distorção de tempo, que pode ser realizada pelo aparelho 300 de acordo com a Figura 3. O 10 método 400 compreende um primeiro passo 410 de geração de dados de contorno de distorção de tempo, reiniciando repetidamente a partir de um valor inicial de contorno de distorção de tempo predeterminado, com base em uma infoanaçãe—de—e-vo 1 uçãe—de—eon-t-crrrro- de distorção de tempo descrevendo uma evolução temporal do 15 contorno de distorção de tempo.
O método 400 adicionalmente compreende um passo 420 de rescalação de pelo menos uma porção dos dados de controle da distorção de tempo, tal que uma descontinuidade em um dos I reinicios seja evitada, reduzida ou eliminada em uma versão rescalada do contorno de distorção de tempo.
O método 400 adicionalmente compreende um passo 430 de fornecimento de uma representação de sinal de áudio decodificado com base na representação de sinal de áudio codificado usando a versão rescalada do contorno de distorção de tempo. 5. DESCRIÇÃO DETALHADA DE UMA CONFIGURAÇÃO DE ACORDO COM A INVENÇÃO TOMANDO REFERÊNCIA ÀS FIGURAS 5-9.
A seguir, será descrita uma configuração de acordo com a invenção em detalhe tomando referência às Figuras 5-9. A Figura 5 mostra um diagrama esquemático de blocos de um aparelho 500 para fornecer uma informação de controle de distorção de tempo 512 com base em uma informação de evolução de contorno de distorção de tempo 510. O aparelho 500 compreende 5 um meio 520 para fornecer um contorno reconstruído de informação de distorção de tempo 522 com base na informação de evolução de contorno de distorção de tempo 510, e uma calculadora de informação de controle de distorção de tempo 530 para fornecer a informação de controle de distorção de tempo 512 com base no 10 contorno reconstruído de informação de distorção de tempo 522. MEIO 520 PARA FORNECER O CONTORNO RECONSTRUÍDO DE INFORMAÇÃO DE DISTORÇÃO DE TEMPO A segui n., se-rão de-s-c-rlrtas a es-truLura- e~ funcionalidade do meio 520. O meio 520 compreende uma calculadora 15 de contorno de distorção de tempo 540, que é configurada para receber a informação de evolução de contorno de distorção de tempo 510 e para fornecer, com base nela, uma nova informação de porção de contorno de distorção 542. Por exemplo, um conjunto de informações de evolução de contorno de distorção de tempo pode ser 20 transmitido para o aparelho 500 para cada estrutura do sinal de áudio a ser reconstruído. Não obstante, um conjunto de informações de evolução de contorno de distorção de tempo 510 associadas com uma estrutura do sinal de áudio a ser reconstruído pode ser usado para a reconstrução de uma pluralidade de estruturas do sinal de 25 áudio. Similarmente, uma pluralidade de conjuntos de informação de evolução de contorno de distorção de tempo pode ser usada para a reconstrução do conteúdo de áudio de uma única estrutura do sinal conclusão, pode-se afirmar que em algumas configurações, a * informação de evolução de contorno de distorção de tempo 510 pode ser atualizada na mesma taxa em que conjuntos do coeficiente de dominio de transformada do sinal de áudio a ser reconstruído ou 5 atualizado (uma porção de contorno de distorção de tempo por estrutura do sinal de áudio).
A calculadora de contorno de distorção de tempo 540 compreende uma calculadora de valor de nó de distorção 544, que é configurada para computar uma pluralidade (ou sequência 10 temporal) de valores de nó de contorno de distorção com base em uma pluralidade (ou sequência temporal) de valores de proporção de contorno de distorção de tempo (ou indices de proporção de distorção de tempo) , em que—o-s—valeres—de—propo^r^ão de distorção de tempo (ou indices) são compostos pela informação de evolução de 15 contorno de distorção de tempo 510. Para este propósito, a calculadora de valor de nó de distorção 544 é configurada para iniciar o fornecimento dos valores de nó de contorno de distorção de tempo em um valor inicial predeterminado (por exemplo, 1) e 40 para calcular valores subsequentes de nó de contorno de distorção de tempo usando os valores de proporção de contorno de distorção de tempo, como será discutido abaixo.
Além disso, a calculadora de contorno de distorção de tempo 540 opcionalmente compreende um interpolador 548 que é configurado para interpolar entre valores subsequentes 25 de nó de contorno de distorção de tempo. Da mesma forma, a descrição 542 da nova porção de contorno de distorção de tempo é obtida, em que a nova porção de contorno de distorção de tempo tipicamente começa a partir do valor inicial predeterminado usado i pela calculadora de valor de nó de distorção 524. Além disso, o -* meio 520 é configurado para considerar porções adicionais de contorno de distorção de tempo, a saber uma referida "última porção de contorno de distorção de tempo" e uma referida "porção de contorno de distorção de tempo atual" para o fornecimento de uma seção completa de contorno de distorção de tempo. Para este propósito, o meio 520 é configurado para armazenar a referida "última porção de contorno de distorção de tempo" e a referida "porção de contorno de distorção de tempo atual" em uma memória não mostrada na Figura 5.
Entretanto, o meio 520 também compreende um rescalador 550, que é configurado para rescalar a "última porção de c o n torno de distorção de tempo——e—a—" po-rçrã~o de contorno 3ê” distorção de tempo atual" para evitar (ou reduzir, ou eliminar) 15 quaisquer descontinuidades na seção completa de contorno de distorção de tempo, que se baseia na "última porção de contorno de distorção de tempo", na "porção de contorno de distorção de tempo atual" e na "nova porção de contorno de distorção de tempo". Para F este propósito, o rescalador 550 é configurado para receber a descrição armazenada da "última porção de contorno de distorção de tempo" e da "porção de contorno de distorção de tempo atual" e conjuntamente rescalar a "última porção de contorno de distorção de tempo" e a "porção de contorno de distorção de tempo atual", para obter versões rescaladas da "última porção de contorno de 25 distorção de tempo" e da "porção de contorno de distorção de tempo atual". Detalhes relativos â rescalação realizada pelo rescalador 550 serão discutidos abaixo, tomando referência às Figuras 7a, 7b e 8. k Além disso, o rescalador 550 pode também ser « configurado para receber, por exemplo de uma memória não mostrada na Figura 5, um valor de soma associado com a "última porção de contorno de distorção de tempo" e outro valor de soma associado 5 com a "porção de contorno de distorção de tempo atual". Estes valores de soma são às vezes chamados de "last_warp_sum" e "cur_warp_sum", respectivamente. O rescalador 550 é configurado para rescalar os valores de soma associados com as porções de contorno de distorção de tempo usando o mesmo fator de rescalação ' 10 com que as correspondentes porções de contorno de distorção de tempo são rescaladas. Da mesma forma, valores de soma rescalados são obtidos.
Em alguns caso,%—o—meio—S-2-θ—pode compreender um atualizador 560, que é configurado para repetidamente atualizar a 15 entrada de porções de contorno de distorção de tempo no rescalador 550 e também a entrada de valores de soma no rescalador 550. Por exemplo, o atualizador 560 pode ser configurado para atualizar a referida informação na taxa de estrutura. Por exemplo, a "nova P porção de contorno de distorção de tempo" do presente ciclo de
estrutura pode servir como a "porção de contorno de distorção de tempo atual" em um próximo ciclo de estrutura. Similarmente, a "porção de contorno de distorção de tempo atual" rescalada do atual ciclo de estrutura pode servir como a "última porção de contorno de distorção de tempo" em um próximo ciclo de estrutura.
Da mesma forma, cria-se uma implementação eficiente de memória, porque a "última porção de contorno de distorção de tempo" do atual ciclo de estrutura pode ser descartada na conclusão do atual ciclo de estrutura.
Para resumir o exposto acima, o meio 520 é configurado para prover, para cada ciclo de estrutura (com exceção de alguns ciclos de estrutura especiais, por exemplo no inicio de uma sequência de estrutura, ou no final de uma sequência de estrutura, ou em uma estrutura na qual a distorção de tempo é inativa) uma descrição de uma seção de contorno de distorção de tempo compreendendo uma descrição de uma "nova porção de contorno de distorção de tempo", de uma "porção rescalada de contorno de distorção de tempo atual" e de uma "última porção rescalada de contorno de distorção de tempo". Além disso, o meio 520 pode fornecer, para cada ciclo de estrutura (com exceção do ciclo de estrutura especial mencionado acima) uma representação de valores de soma de contorno de distonção-,—pe-r—exemptoç compreendendo um "valor de soma da nova porção de contorno de distorção de tempo", um "valor de soma de contorno de distorção de tempo atual rescalado" e um "valor de soma do último contorno de distorção de tempo rescalado".
A calculadora de informação de controle de distorção de tempo 530 é configurada para calcular a informação de 20 controle de distorção de tempo 512 com base no contorno reconstruído de informação de distorção de tempo fornecido pelo meio 520. Por exemplo, a calculadora de informação de controle de distorção de tempo compreende uma calculadora de contorno de tempo 570, que é configurada para computar um contorno de tempo 572 com 25 base na informação reconstruída de controle de distorção de tempo.
Além disso, a calculadora de informação de contorno de distorção de tempo 530 compreende uma calculadora de posição de amostra 574, que é configurada para receber o contorno de tempo 572 e para fornecer, com base nele, uma informação de posição de amostra, por exemplo na forma de um vetor de posição de amostra 576. 0 vetor de posição de amostra 576 descreve a distorção de tempo realizada, por exemplo, pelo reamostrador 218.
A calculadora de informação de controle de distorção de tempo 530 também compreende uma calculadora de comprimento de transição, que é configurada para derivar uma informação de comprimento de transição a partir da informação reconstruída de controle de distorção de tempo. A informação de 10 comprimento de transição 582 pode, por exemplo, compreender uma informação descrevendo um comprimento de transição esquerda e uma informação descrevendo um comprimento de transição direita. O comprimento de transição pode, .po-r e-xemptoç depender dê úm comprimento de segmentos de tempo descritos pela "última porção de 15 contorno de distorção de tempo", pela "porção de contorno de distorção de tempo atual" e pela "nova porção de contorno de distorção de tempo". Por exemplo, o comprimento de transição pode ser encurtado (quando comparado a um comprimento de transição padrão) se a extensão temporal de um segmento de tempo descrito 20 pela "última porção de contorno de distorção de tempo" for mais curta do que uma extensão temporal do segmento de tempo descrito pela "porção de contorno de distorção de tempo atual", ou se a extensão temporal de um segmento de tempo descrito pela "nova porção de contorno de distorção de tempo" for mais curta do que a 25 extensão temporal do segmento de tempo descrito pela "porção de contorno de distorção de tempo atual".
Além disso, a calculadora de informação de controle de distorção de tempo 530 pode adicionalmente compreender uma calculadora de primeira e última posição 584, que é * configurada para calcular uma referida "primeira posição" e uma referida "última posição" com base no comprimento de transição esquerda e direita. A "primeira posição" e a "última posição" 5 aumentam a eficiência do reamostrador, pois regiões fora destas posições são idênticas a zero após aplicação da função janela e portanto não é necessário levá-las em conta para a distorção de tempo. Deve-se notar aqui que o vetor de posição de amostra 576 compreende, por exemplo, informação exigida pela distorção de 10 tempo realizada pelo reamostrador 280. Além disso, o comprimento de transição esquerda e direita 582 e a "primeira posição" e "última posição" 586 constituem informação, que é, por exemplo-, exigida pelo windower 216..
Da mesma forma, pode-se dizer que o meio 520 e a calculadora de informação de controle de distorção de tempo 530 podem juntas assumir a funcionalidade do ajuste de taxa de amostra 220, do ajuste de forma de janela 210 e do cálculo de posição de amostragem 219. A seguir, será descrita a funcionalidade de um 20 decodificador de áudio que compreende o meio 520 e a calculadora de informação de controle de distorção de tempo 530 com referência às Figuras 6, 7a, 7b, 8, 9a-9c, 10a-10g, 11a, 11b e 12. A Figura 6 mostra um fluxograma de um método para decodificar uma representação codificada de um sinal de áudio, de acordo com uma configuração da invenção. O método 600 compreende o fornecimento de um contorno reconstruído de informação de distorção de tempo, em que o fornecimento do contorno reconstruído de informação de distorção de tempo compreende o cálculo 610 de valores de nó de distorção, interpolação 620 entre os valores de nó de distorção e rescalação 630 de uma ou mais porções de contorno de distorção previamente calculadas e um ou mais valores de soma de contorno de distorção previamente calculados. O método 600 adicionalmente compreende o cálculo 640 da informação de controle de distorção de tempo usando uma "nova porção de contorno de distorção de tempo" obtida nos passos 610 e 620, as porções rescaladas de contorno de distorção de tempo previamente calculadas ("porção de contorno de distorção de tempo atual" e "última porção de contorno de distorção de tempo") e também, opcionalmente, usando os valores rescalados de soma de contorno de distorção previamente calculados. Como resultado, uma informação de contorno de tempo, e/ou uma info_rmaç-ão—de—pos-i-ção—d® amostra"/” e/ou uma informação de comprimento de transição e/ou uma informação de primeira porção e de última posição podem ser obtidas no passo 640.
O método 600 adicionalmente compreende a realização 650 da reconstrução do sinal de tempo distorcido usando a informação de controle de distorção de tempo obtida no passo 640. Detalhes relativos à reconstrução de sinal de distorção de tempo serão descritos subsequentemente.
O método 600 também compreende um passo 660 de atualização de uma memória, como será descrito abaixo. CÁLCULO DAS PORÇÕES DE CONTORNO DE DISTORÇÃO DE 25 TEMPO
A seguir, serão descritos detalhes relativos ao cálculo das porções de contorno de distorção de tempo, tomando referência às Figuras 7a, 7b, 8, 9a, 9b, 9c.
Será assumido que um estado inicial está presente, que é ilustrado em uma representação gráfica 710 da Figura 7a. Como pode ser visto, uma primeira porção de contorno de distorção 716 (porção de contorno de distorção 1) e uma segunda 5 porção de contorno de distorção 718 (porção de contorno de distorção 2) estão presentes. Cada uma das porções de contorno de distorção tipicamente compreende uma pluralidade de valores discretos de dados de contorno de distorção, que são tipicamente armazenados em uma memória. Os diferentes valores de dados de contorno de distorção estão associados com valores de tempo, em que um tempo é mostrado em uma abscissa 712. Uma magnitude dos valores de dados de contorno de distorção é mostrada em uma ordenada 714. Como pode ser visto, a primeixa—po-rçã-o—de—corrtOTnõ^ ' "“dê^distorção tem um valor final de 1, e a segunda porção de contorno de distorção tem um valor inicial de 1, em que o valor de 1 pode ser considerado como um "valor predeterminado". Deve-se notar que a primeira porção de contorno de distorção 716 pode ser considerada como uma "última porção de contorno de distorção de tempo" (também chamada de "last_warp_contour"), enquanto a segunda 20 porção de contorno de distorção 718 pode ser considerada como uma "porção de contorno de distorção de tempo atual" (também chamada de "cur_warp_contour") .
Começando a partir do estado inicial, uma nova porção de contorno de distorção é calculada, por exemplo, nos 25 passos 610, 620 do método 600. Da mesma forma, valores de dados de contorno de distorção da terceira porção de contorno de distorção (também chamada de "porção de contorno de distorção 3" ou "nova porção de contorno de distorção de tempo" ou "new_warp_contour") são calculados. O cálculo pode, por exemplo, ser separado em um s cálculo de valores de nó de distorção, de acordo com um algoritmo 910 mostrado na Figura 9a, e uma interpolação 620 entre os valores de nó de distorção, de acordo com um algoritmo 920 mostrado na Figura 9a. Da mesma forma, uma nova porção de contorno de distorção 722 é obtida, que começa a partir do valor predeterminado (por exemplo, 1) e que é mostrado em uma representação gráfica 720 da Figura 7a. Como pode ser visto, a primeira porção de contorno de distorção de tempo 716, a segunda 10 porção de contorno de distorção de tempo 718 e a terceira nova porção de contorno de distorção de tempo estão associadas com intervalos de tempo subsequentes e contiguos. Além disso, pode- se ver que há uma descontinuidade 724__en_tne—um—pe-n-to fúiTãi 7181o da segunda porção de contorno de distorção de tempo 718 e um ponto inicial 722a da terceira porção de contorno de distorção de tempo.
Deve-se notar aqui que a descontinuidade 724 tipicamente compreende uma magnitude que é maior do que uma variação entre quaisquer dois valores de dados de contorno de 20 distorção do contorno de distorção de tempo temporalmente adjacentes dentro de uma porção de contorno de distorção de tempo.
Isso se deve ao fato de que o valor inicial 722a da terceira porção de contorno de distorção de tempo 722 é forçado ao valor predeterminado (e.g. 1), independente do valor final 718b da 25 segunda porção de contorno de distorção de tempo 718. Deve-se notar que a descontinuidade 724 é portanto maior do que a variação inevitável entre dois valores de dados de contorno de distorção adjacentes, discretos.
Não obstante, esta descontinuidade entre a s segunda porção de contorno de distorção de tempo 718 e a terceira porção de contorno de distorção de tempo 722 seria prejudicial para o uso posterior dos valores de dados de contorno de distorção 5 de tempo.
Da mesma forma, a primeira porção de contorno de distorção de tempo e a segunda porção de contorno de distorção de tempo são conjuntamente rescaladas no passo 630 do método 600. Por exemplo, os valores de dados de contorno de distorção de tempo da 10 primeira porção de contorno de distorção de tempo 716 e os valores de dados de contorno de distorção de tempo da segunda porção de contorno de distorção de tempo 718 são rescalados por multiplicação com um fator de rescalação CLamò-ém -e-ham-ado de "Hõrm_fac") . Da mesma forma, uma versão rescalada 716' da primeira 15 porção de contorno de distorção de tempo 716 é obtida, e também uma versão rescalada 718' da segunda porção de contorno de distorção de tempo 718 é obtida. Em contraste, a terceira porção de contorno de distorção de tempo é tipicamente não afetada neste passo de rescalação, como pode ser visto em uma representação 20 gráfica 730 da Figura 7a. A rescalação pode ser realizada tal que o ponto final rescalado 718b' compreende, pelo menos aproximadamente, os mesmos valores de dados que o ponto inicial 722a da terceira porção de contorno de distorção de tempo 722. Da mesma forma, a versão rescalada 716' da primeira porção de 25 contorno de distorção de tempo, a versão rescalada 718 da segunda porção de contorno de distorção de tempo e a terceira porção de contorno de distorção de tempo 722 juntas formam uma seção de particular, a escalação pode ser realizada tal que uma diferença e entre os valores de dados do ponto final rescalado 718b' e o ponto inicial 722a não é maior do que um máximo da diferença entre quaisquer dois valores de dados adjacentes das porções de contorno 5 de distorção de tempo 716', 718', 722.
Da mesma forma, a seção aproximadamente continua de contorno de distorção de tempo compreendendo as porções rescaladas de contorno de distorção de tempo 716', 718' e a porção original de contorno de distorção de tempo 722 é usada para o 10 cálculo da informação de controle de distorção de tempo, que é realizada no passo 640. Por exemplo, a informação de controle de distorção de tempo pode ser computada para uma estrutura de áudio temporalmente associada com a segunda p_o_r:çã.o—de contorno de” distorção de tempo 718.
Entretanto, no cálculo da informação de controle de distorção de tempo no passo 640, uma reconstrução de sinal de tempo distorcido pode ser realizada em um passo 650, que será explicado em mais detalhes abaixo.
Subsequentemente, é necessário obter a informação 20 de controle de distorção de tempo para uma próxima estrutura de áudio. Para este propósito, a versão rescalada 716' da primeira porção de contorno de distorção de tempo pode ser descartada para poupar memória, porque não é mais necessária. Entretanto, a versão rescalada 716' pode naturalmente também ser salva para qualquer 25 propósito. Mais ainda, a versão rescalada 718' da segunda porção de contorno de distorção de tempo toma o lugar da "última porção de contorno de distorção de tempo" para o novo cálculo, como pode ser visto em uma representação gráfica 740 da Figura 7b. Depois, a terceira porção de contorno de distorção de tempo 722, que tomou o « lugar da "nova porção de contorno de distorção de tempo" no cálculo anterior, assume o papel da "porção de contorno de distorção de tempo atual" para um próximo cálculo. A associação é 5 mostrada na representação gráfica 740.
Subsequente a esta atualização da memória (passo 660 do método 600), uma nova porção de contorno de distorção de tempo 752 é calculada, como pode ser visto na representação gráfica 750. Para este propósito, os passos 610 e 620 do método 600 podem ser re-executados com novos dados de entrada. A quarta porção de contorno de distorção de tempo 752 assume o papel da "nova porção de contorno de distorção de tempo" agora. Como pode ser visto, há tipicamente uma descontinuidade entre_um—po-n-to—f-rnadT —7-2-2b dã terceira porção de contorno de distorção de tempo e um ponto inicial 752a da quarta porção de contorno de distorção de tempo 752. Esta descontinuidade 754 é reduzida ou eliminada por uma subsequente rescalação (passo 630 do método 600) da versão rescalada 718' da segunda porção de contorno de distorção de tempo F e da versão original da terceira porção de contorno de distorção de tempo 722. Da mesma forma, uma versão rescalada duas vezes 718' ' da segunda porção de contorno de distorção de tempo e uma versão rescalada uma vez 722' da terceira porção de contorno de distorção de tempo são obtidas, como pode ser visto a partir de uma representação gráfica 760 da Figura 7b. Como pode ser visto, 25 as porções de contorno de distorção de tempo 718'', 722', 752 formam uma seção de contorno de distorção de tempo pelo menos aproximadamente continua, que pode ser usada para o cálculo de passo 640. por exemplo, uma informação de controle de distorção de tempo pode ser calculada com base nas porções de contorno de distorção de tempo 718'', 722', 752, cuja informação de controle de distorção de tempo é associada a uma estrutura de tempo de 5 sinal de áudio centrado na segunda porção de contorno de distorção de tempo.
Deve-se notar que em alguns casos é desejável ter um valor de soma de contorno de distorção associado para cada uma das porções de contorno de distorção de tempo. Por exemplo, um 10 primeiro valor de soma de contorno de distorção pode ser associado com a primeira porção de contorno de distorção de tempo, um segundo valor de soma de contorno de distorção pode ser associado com a segunda porção de contorno de distorção de tempo-r—e—a-s-s±nr — -por díãfrtêT Õsvalores de soma de contorno de distorção podem, por exemplo, ser usados para o cálculo da informação de controle de distorção de tempo no passo 640.
Por exemplo, o valor de soma de contorno de distorção pode representar uma soma dos valores de dados de contorno de distorção de uma respectiva porção de contorno de 20 distorção de tempo. Entretanto, como as porções de contorno de distorção de tempo são escaladas, é às vezes desejável também escalar o valor de soma de contorno de distorção de tempo, tal que o valor de soma de contorno de distorção de tempo siga a característica de sua porção de contorno de distorção de tempo 25 associada. Da mesma forma, um valor de soma de contorno de distorção associado com a segunda porção de contorno de distorção de tempo 718 pode ser escalado (por exemplo, pelo mesmo fator de tempo 718 é escalada para obter a versão escalada 718' desta. Similarmente, o valor de soma de contorno de distorção associado com a primeira porção de contorno de distorção de tempo 716 pode ser escalado (por exemplo, com o mesmo fator de escalação) quando 5 a primeira porção de contorno de distorção de tempo 716 é escalada para obter a versão escalada 716' desta, se desejado.
Além disso, uma re-associação(ou re-alocação de memória) pode ser realizada ao proceder à consideração de uma nova porção de contorno de distorção de tempo. Por exemplo, o valor de 10 soma de contorno de distorção associado com a versão escalada 718' da segunda porção de contorno de distorção de tempo, que assume o papel de um "valor atual de soma de contorno de distorção de tempo" para o cálculo da informação de controle de___drs-t&rç-ão de- tempo—a-s-sorcTãdã com as porções de contorno de distorção de tempo 15 716', 718', 722 pode ser considerado como um "último valor de soma de distorção de tempo" para o cálculo de uma informação de controle de distorção de tempo associada com as porções de contorno de distorção de tempo 718", 722', 752. Similarmente, o valor de soma de contorno de distorção associado com a terceira 20 porção de contorno de distorção de tempo 722 pode ser considerado como um "novo valor de soma de contorno de distorção" para o cálculo da informação de controle de distorção de tempo associada com as porções de contorno de distorção de tempo 716', 718', 722 e pode ser mapeado para agir como "atual valor de soma de contorno 25 de distorção" para o cálculo da informação de controle de distorção de tempo associada com as porções de contorno de distorção de tempo 718", 722', 752. Além disso, o recém calculado contorno de distorção de tempo 7 52 pode assumir o papel do "novo valor de soma de contorno de distorção" para o cálculo da informação de controle de distorção de tempo associada com as porções de contorno' de distorção de tempo 718'', 722', 752. EXEMPLO DE ACORDO COM A FIGURA 8 A Figura 8 mostra uma representação gráfica ilustrando um problema que é resolvido pelas configurações de acordo com a invenção. Uma primeira representação gráfica 810 mostra uma evolução temporal de um passo relativo reconstruído ao 10 longo do tempo, que é obtido em algumas configurações convencionais. Uma abscissa 812 descreve o tempo, uma ordenada 814 descreve o passo relativo. Uma curva 816 mostra a evolução temporal do passo relativo ao longo do tempo, .jque—pode-rú-a srrr -——re-cuπs’fruida a partir da informação de passo relativo. No que 15 concerne à reconstrução do contorno de passo relativo, deve-se notar que para a aplicação da transformada de cossenos discreta modificada (MDCT) de tempo distorcido apenas o conhecimento da variação relativa do passo dentro da estrutura real é necessário.
A fim de entender isto, faz-se referência aos passos de cálculo 20 para obter o contorno de tempo a partir do contorno de passo relativo, que leva a um contorno de tempo idêntico para versões escaladas do mesmo contorno de passo relativo. Portanto, é suficiente apenas codificar o valor de passo relativo ao invés de um valor absoluto , que aumenta a eficiência da codificação. Para 25 adicionalmente aumentar a eficiência, o valor quantizado real não é o passo relativo mas a mudança relativa no passo, isto é, a proporção do atual passo relativo sobre o passo relativo anterior (como será discutido em detalhe a seguir). Em algumas estruturas onde, por exemplo, o sinal não exibe estrutura harmônica alguma, não poderia ser desejada distorção de tempo. Em tais casos, um flag adicional pode opcionalmente indicar um contorno plano de passo ao invés de codificar este contorno plano com o método 5 mencionado anteriormente. Como em sinais do mundo real a quantidade de tais estruturas é tipicamente alta suficiente, o balanço entre o bit adicional adicionado em todas as vezes e os bits salvos para estruturas não distorcidas está a favor da economia de bits.
O valor inicial para o cálculo da variação de passo (contorno de passo relativo, ou contorno de distorção de tempo) pode ser escolhido arbitrariamente ou até diferir no codificador e decodificador. Devido à natureza da MDCT de—tempe- diste-rexdo fTW-MDCT) diferentes valores iniciais da variação de 15 passo ainda dão as mesmas posições de amostra e formas de janela adaptadas para realizar a TW-MDCT.
Por exemplo, um codificador (de áudio) obtém um contorno de passo para cada nó que é expresso como atraso de passo real em amostras em conjunto com uma especificação vocalizado/não 20 vocalizado opcional, que era, por exemplo, obtida aplicando-se uma estimativa de passo e decisão vocalizado/não vocalizado que se sabia oriunda de codificação da fala. Se para o atual nó a classificação é estabelecida como vocalizado, ou não há decisão vocalizado/não vocalizado disponível, o codificador calcula a 25 proporção entre o atraso de passo real e o quantiza, ou apenas estabelece a proporção para 1 se não vocalizado. Outro exemplo poderia ser que a variação de passo é estimada diretamente por um método apropriado (por exemplo, estimativa de variação de sinal).
No decodificador, o valor inicial para o primeiro passo relativo no inicio do áudio codificado é estabelecido para um valor arbitrário, por exemplo para 1. Portanto, o contorno de passo relativo decodificado não está mais na mesma variação 5 absoluta do codificador de contorno de passo, porém uma versão escalada deste. Ainda, como descrito acima, o algoritmo da TW-MDCT leva às mesmas posições de amostra e formas de janela. Além disso, o codificador poderia decidir, se as proporções de passo codificadas resultarem em um contorno de passo plano, não enviar o 3 contorno totalmente codificado, mas ao invés disso estabelecer o flag activePitchData em 0, economizando bits nesta estrutura (por exemplo, salvando bits numPitchbits * numPitches nesta estrutura). A seguir, serão discutidos os problemas que P comem—n-a ausência da renormali zação do contorno de passo 15 inventivo. Como mencionado acima, para a TW-MDCT, apenas a mudança de passo relativo dentro de um certo intervalo de tempo limitado em volta do bloco atual é necessária para o cômputo da distorção de tempo e a adaptação da forma de janela correta (vide explicações acima). A distorção de tempo segue o contorno 20 decodificado para segmentos onde uma mudança de passo foi detectada, e permanece constante em todos os outros casos (vide a representação gráfica 810 da Figura 8). Para o cálculo de janela e posições de amostragem de um bloco, três segmentos consecutivos de contorno de passo relativo (por exemplo, três porções de contorno 25 de distorção de tempo) são necessários, em que o terceiro é o recentemente transmitido na estrutura (designada como "nova porção de contorno de distorção de tempo") e os outros dois são amortecidos a partir do passado (por exemplo, designado como "última porção de contorno de distorção de tempo" e "porção de contorno de distorção de tempo atual") .
Para ter um exemplo, faz-se referência, por exemplo, às explicações que foram feitas com referência às Figuras 5 7a e 7b, e também às representações gráficas 810, 860 da Figura 8. Para calcular, por exemplo, as posições de amostragem da janela para (ou associada com) a estrutura 1, que se estende da estrutura 0 para a estrutura 2, os contornos de passo de (ou associados com) a estrutura 0, 1 e 2 são necessários. No bit stream, apenas a informação de passo para a estrutura 2 é enviada na atual estrutura, e as outras duas são tomadas a partir do passado. Como explicado aqui, o contorno de passo pode ser continuado aplicando- se a primeira proporção de passo relativo decodificada a.o—último- passo da—.esi-ntrtrrrã I para obter õ” passo no primeiro nó da estrutura 2, e assim por diante. Agora é possivel, devido à natureza do sinal, que se o contorno de passo for simplesmente continuado (isto é, se a parte recém transmitida do contorno for anexada às duas partes existentes sem qualquer modificação), que um estouro de variação no formato de número interno do codificador 20 ocorra após um certo tempo. Por exemplo, um sinal poderia começar com um segmento de características harmônicas fortes e um valor de passo alto no inicio que é decrescente ao longo de todo o segmento, levando a um passo relativo decrescente. Então, um segmento sem informação de passo pode seguir, a fim de que o passo relativo mantenha-se constante. Então novamente, uma seção harmônica pode começar com um passo absoluto que é maior do que o último passo absoluto do segmento anterior, e novamente seguindo se simplesmente continua-se o passo relativo, é o mesmo que no final do último segmento harmônico e « irá baixar mais ainda, e assim por diante. Se o sinal é forte o suficiente e tem em seus segmentos harmônicos uma tendência global de subir ou descer (como mostrado na representação gráfica 810 da 5 Figura 8), cedo ou tarde o passo relativo alcança a fronteira de uma gama do formato de número interno. É bem conhecido a partir de codificação da fala que sinais da voz de fato exibem tal característica. Portanto não é surpresa, que a codificação de um conjunto concatenado de sinais do mundo real incluindo a voz de 10 fato excederam a gama dos valores de flutuação usados para o passo relativo após um tempo relativamente curto ao se usar o método convencional descrito acima.
Para resumir, para um segmento (ou 'est.mrt-u-^a-}—de" sinal de áudio—pa-r-a—o""qüãl umpasso pode ser determinado, poderia ser determinada uma evolução apropriada do contorno de passo relativo (ou contorno de distorção de tempo). Para segmentos de sinal de áudio (ou sinais de estrutura de áudio) para os quais um passo não possa ser determinado (por exemplo, porque os segmentos de sinal de áudio são semelhantes a ruídos) o contorno de passo relativo (ou contorno de distorção de tempo) poderia ser mantido constante. Da mesma forma, se houvesse um desequilíbrio entre segmentos de áudio com passo crescente e passo decrescente, o contorno de passo relativo (ou contorno de distorção de tempo) tenderia a um underflow numérico ou estouro numérico.
Por exemplo, na representação gráfica 810 um contorno de passo relativo é mostrado para o caso em que há uma pluralidade de porções de contorno de passo relativo 820a, 820a, 820c, 820d com passo decrescente e alguns segmentos de áudio 822a 822b sem passo, porém sem segmentos de áudio com passo crescente.
Da mesma forma, pode-se ver que o contorno de passo relativo 816 tende a um underflow numérico (pelo menos sob circunstâncias muito adversas).
A seguir, será descrita uma solução para este problema. Para prevenir os problemas supracitados, em particular o underflow ou estouro numérico, uma renormalização periódica do contorno de passo relativo foi introduzida de acordo com um aspecto da invenção. Como o cálculo do contorno de tempo 10 distorcido e as formas de janela confiam apenas nas mudanças relativas ao longo dos três segmentos de contorno de passo relativo supracitados (também designados como "porções de contorno de distorção de tempo") , como explicado aqui, é _p-os.s-í-v-e-l- normalizajr—es-fee—conXõrncT (por exemplo, o contorno de distorção de 15 tempo, que pode ser composto de três partes de "porções de contorno de distorção de tempo") para cada estrutura (por exemplo, do sinal de áudio) de uma nova maneira com o mesmo resultado.
Para isto, a referência foi, por exemplo, escolhida para ser a última amostra do segundo segmento de contorno 20 (também designado como "porção de contorno de distorção de tempo"), e o contorno está agora normalizado (por exemplo, multiplicativamente no dominio linear) de tal forma que esta amostra tem um valor de 1,0 (vide a representação gráfica 860 da Figura 8) .
A representação gráfica 860 da Figura 8 25 representa a normalização do contorno de passo relativo. Uma abscissa 862 mostra o tempo, subdividido em estruturas (estruturas 0, 1, 2) . Uma ordenada 864 descreve o valor do contorno de passo relativo.
Um contorno de passo relativo antes da normalização é designado com 870 e cobre duas estruturas (por exemplo, estrutura número 0 e estrutura número 1). Um novo segmento de contorno de passo relativo (também designado como 5 "porção de contorno de distorção de tempo") começando a partir do valor inicial predeterminado do contorno de passo relativo (ou valor inicial de contorno de distorção de tempo) é designado com 874. Como pode ser visto, o reinicio do novo segmento de contorno de passo relativo 874 a partir do valor inicial predeterminado do 10 contorno de passo relativo (por exemplo, 1) traz uma descontinuidade entre o segmento de contorno de passo relativo 870 que precede o ponto temporal de reinicio e o novo segmento de contorno de passo, relativo 874, que é designado com 878. Esta descontinuidade traria um grave problema para a derivação de qualquer informação de controle de distorção de tempo a partir do contorno e possivelmente resultará em distorções de áudio. Portanto, um segmento de contorno de passo relativo 870 previamente obtido que precede o ponto temporal de reinicio é rescalado (ou normalizado), para obter um segmento rescalado de 20 contorno de passo relativo 870' . A normalização é realizada tal que a última amostra do segmento de contorno de passo relativo 870 é escalada para um valor inicial predeterminado do contorno de passo relativo (por exemplo, de 1,0).
DESCRIÇÃO DETALHADA DO ALGORITMO
A seguir, serão descritos em detalhe alguns dos algoritmos realizados por um decodificador de áudio de acordo com uma configuração da invenção. Para este propósito, serão feitas referências às Figuras 5, 6, 9a, 9b, 9c e 10a-10g. Adicionalmente, faz-se referência à legenda de elementos de dados, elementos de ajuda e constantes das Figuras 11a e 11b. método descrito aqui pode ser usado para decodificar um stream de 5 áudio que esteja codificado de acordo com uma transformada de cossenos discreta modificada de tempo distorcido. Assim, quando a TW-MDCT é habilitada para o stream de áudio (que pode ser indicada por um flag, por exemplo chamado de flag "twMdct", que pode ser composta em uma informação de configuração especifica), um banco 10 de filtros de tempo distorcido e troca de bloco podem substituir um banco de filtros padrão e troca de bloco. Adicionalmente à transformada inversa de cossenos discreta modificada (IMDCT), o banco de filtros de tempo distorcido e troca de bloco contém um dominio de tempo para mapeamento de dominio de tempo a partir de 15 uma grade de tempo arbitrariamente espaçado para a grade de tempo regularmente espaçado normal e uma adaptação correspondente de formas de janela. codificação. Em um primeiro passo, o contorno de distorção é 20 decodificado. O contorno de distorção pode ser, por exemplo, codificado usando indices de livro de código de nós de contorno de distorção. Os indices de livro de código dos nós de contorno de distorção são decodificados, por exemplo, usando o algoritmo mostrado em uma representação gráfica 910 da Figura 9a. De acordo com o referido algoritmo, valores de proporção de distorção (warp_value_tbl) são derivados a partir de indices do livro de códigos para proporção de distorção (tw_ratio) , por exemplo usando um mapeamento definido por uma tabela de mapeamento 990 da Figura 9c. Como pode ser visto a partir do algoritmo mostrado como numeral de referência 910, os valores de nó de distorção podem ser estabelecidos para um valor constante predeterminado, se um flag (tw_data_present) indicar que dados de distorção de tempo não 5 estão presentes. Em contraste, se o flag indicar que dados de distorção de tempo estão presentes, um primeiro valor de nó de distorção pode ser estabelecido para o valor predeterminado inicial de contorno de distorção de tempo (por exemplo, 1). Valores subsequentes de nó de distorção (de uma porção de contorno 10 de distorção de tempo) podem ser determinados com base em uma formação de um produto de múltiplos valores de proporção de distorção de tempo. Por exemplo, um valor de nó de distorção de um nó imediatamente após o primeiro nó de distorção (i=0) pode ser igual a um primeiro valor de proporção de distorção (se o valor 15 inicial for 1) ou igual a um produto do primeiro valor de proporção de distorção e o valor inicial. Valores subsequentes de nó de distorção de tempo (i=2,3,..., num_tw_nodes) são computados formando-se um produto de múltiplos valores de proporção de distorção de tempo (opcionalmente levando em consideração o valor 20 inicial, se o valor inicial diferir de 1) . Naturalmente, a ordem da formação de produto é arbitrária. Entretanto, é vantajoso derivar um (i+l)-ésimo valor de modo de distorção a partir de um i-ésimo valor de nó de distorção multiplicando o i-ésimo valor de nó de distorção com um único valor de proporção de distorção 25 descrevendo uma proporção entre dois valores subsequentes de nó do contorno de distorção de tempo...
Como pode ser visto a partir do algoritmo mostrado no numeral de referência 910, pode haver múltiplos indices do livro de códigos para proporção de distorção para uma única porção de contorno de distorção de tempo ao longo de uma única estrutura de áudio (em que pode haver uma correspondência 1-a-l entre porções de contorno de distorção de tempo e estruturas de áudio).
Para resumir, uma pluralidade de valores de nó de distorção de tempo pode ser obtida para uma determinada porção de contorno de distorção de tempo (ou uma determinada estrutura de áudio) no passo 610, por exemplo usando a calculadora de valor de nó de distorção 544. Subsequentemente, uma interpolação linear 10 pode ser realizada entre os valores de nó de distorção de tempo (warp_node_values[i]). Por exemplo, para obter os valores de dados de contorno de distorção de tempo da "nova porção de contorno de distorção de tempo" (new_warp_contour) o algoritmo mostrado no numeral de referência 920 na Figura 9a pode ser usado. Por exemplo, o número de amostras da nova porção de contorno de distorção de tempo é igual à metade do número das amostras de dominio de tempo de uma transformada inversa de cossenos discreta modificada. Com relação a esta questão, deve-se notar que as estruturas de sinal de áudio adjacentes são tipicamente trocadas (pelo menos aproximadamente) por metade do número de amostras de dominio de tempo da MDCT ou IMDCT. Em outras palavras, para obter o modo de amostra (amostras N_long) new_warp_contour[], os warp__node_values [ ] são interpolados linearmente entre os nós igualmente espaçados (separação interp_dist) usando o algoritmo 25 mostrado no numeral de referência 920. A interpolação pode, por exemplo, ser realizada pelo interpolador 548 do aparelho da Figura 5, ou no passo 620 do algoritmo 600.
Antes de obter o completo contorno de distorção para esta estrutura (isto é para a estrutura presentemente sob consideração) os valores amortecidos a partir do passado são rescalados para que o último valor de distorção do past_warp_contour[] seja igual a 1 (ou qualquer outro valor predeterminado, que é preferivelmente igual ao valor inicial da nova porção de contorno de distorção de tempo) .
Deve-se notar aqui que o termo "contorno de distorção passado" preferivelmente compreende a "última porção 10 de contorno de distorção de tempo" descrita acima e a "porção de contorno de distorção de tempo atual" descrita acima. Deve- se também notar que o "contorno de distorção passado" tipicamente compreende uma extensão que é igual a um número de amostras de dominio de tempo da IMDCT, tal que valores do 15 "contorno de distorção passado" são designados com indices entre 0 e 2*n_long-l. Assim, "past_warp_contour[2*n_long-l]" designa um último valor de distorção do "contorno de distorção numeral de referência 930 na Figura 9a. Desta forma, o contorno de distorção passado (compreendendo a "última porção de contorno de distorção de tempo" e a "porção de contorno de distorção de tempo atual") pode ser multiplicativamente rescalado de acordo com a equação mostrada no numeral de referência 932 na Figura 9a. Além disso, o "último valor de soma de contorno de distorção" (last_warp_sum) e o "atual valor de soma de contorno de distorção" (cur_warp_sum) podem ser multiplicativamente rescalados, como mostrado nos numerais de referência 934 e 936 na Figura 9a. A rescalação pode ser realizada pelo rescalador 550 da Figura 5, ou no passo 630 do método 600 da Figura 6.
Deve-se notar que a normalização descrita aqui, por exemplo no numeral de referência 930, então poderia ser modificada, por exemplo, substituindo o valor inicial de "1" por qualquer outro valor predeterminado desejado.
Aplicando-se a normalização, um "full warp_contour[]" também designado como uma ''seção de contorno de 10 distorção de tempo" é obtido concatenando-se o "past__warp_contour" e o ”new_warp_contour". Desta forma, três porções de contorno de distorção de tempo ("última porção de contorno de distorção de tempo", "porção de contorno de distorção de tempo atual", e "nova porção de contorno de distorção de tempo") formam o "contorno de 15 distorção completo", que pode ser aplicado em passos adicionais do cálculo.
Além disso, um valor de soma de contorno de distorção (new_warp_sum) é calculado, por exemplo, como uma soma de todos os valores de "new_warp_contour[]". Por exemplo, um novo 20 valor de soma de contorno de distorção pode ser calculado de acordo com os algoritmos mostrados no numeral de referência 940 na Figura 9a.
Após os cálculos descritos acima, a informação de entrada exigida pela calculadora de informação de controle de 25 distorção de tempo 330 ou pelo passo 640 do método 600 está disponivel. Da mesma forma, o cálculo 640 da informação de controle de distorção de tempo pode ser realizado, por exemplo pela calculadora de informação de controle de distorção de tempo 530. Também, a reconstrução de sinal de tempo distorcido 650 pode ser realizada pelo decodificador de áudio. Ambos, o cálculo 640 e a reconstrução de sinal de tempo distorcido 650 serão explicados em maiores detalhes abaixo.
Entretanto, é importante notar que o presente algoritmo procede iterativamente. É portanto computacionalmente θficiθnte atualizar a memória. Por exemplo, é possível descartar informação sobre a última porção de contorno de distorção de tempo. Adicionalmente, é recomendável usar a presente "porção de contorno de distorção de tempo atual" como uma "última porção de contorno de distorção de tempo" em um próximo ciclo de cálculo. Adicionalmente, é recomendável usar a presente "nova porção de contorno de distorção de . tempo" como uma "porção de contorno_.de distorção de tempo atual" em um próximo ciclo de cálculo. Esta atribuição pode ser feita usando a equação mostrada no numeral de referência 950 na Figura 9b, (em que warp_contour [n] descreve a presente "nova porção de contorno de distorção de tempo" para 2* n_long<n<3»n_long).
Atribuições apropriadas podem ser vistas nos numerais de referência 952 e 954 na Figura 9b. Em outras palavras, buffers de memória usados para decodificar a próxima estrutura podem ser atualizados de acordo com as equações mostradas nos numerais de referência 950, 952 e 954.
Deve-se notar que a atualização de acordo com as equações 950, 952 e 954 não fornece um resultado razoável, se a informação apropriada não estiver sendo gerada para uma estrutura prévia. Da mesma forma, antes de decodificar a primeira estrutura ou se a última estrutura foi codificada com um tipo diferente de codificador (por exemplo, um codificador de dominio LPC) no contexto de um codificador trocado, os estados de memória podem ser estabelecidos de acordo com as equações mostradas nos numerais 5 de referência 960, 962 e 964 da Figura 9b. CÁLCULO DE INFORMAÇÃO DE CONTROLE DE DISTORÇÃO DE TEMPO
A seguir, será descrito brevemente como a informação de controle de distorção de tempo pode ser calculada 0 com base no contorno de distorção de tempo (compreendendo, por exemplo, três porções de contorno de distorção de tempo) e com base nos valores de soma de contorno de distorção.
Por exemplo,de seja - sj3_reconstru r_um_çp_ntPrno_de. tempo usando o contorno de distorção de tempo. Para este ) propósito, pode ser usado um algoritmo que é mostrado nos numerais de referência 1010, 1012 na Figura 10a. Como pode ser visto, o contorno de tempo mapeia um índice i (0^i^3•n_long) em um correspondente valor de contorno de tempo. Um exemplo de tal mapeamento é mostrado na Figura 12. 1 Com base no cálculo do contorno de tempo, é tipicamente necessário calcular uma posição de amostra (sample_pos[ ] ) , que descreve posições amostras de tempo distorcido em uma escala de tempo linear. Tal cálculo pode ser realizado usando um algoritmo, que é mostrado no numeral de referência 1030 25 na Figura 10b. No algoritmo 1030, podem ser usadas funções auxiliares, que são mostradas nos numerais de referência 1020 e 1022 na Figura 10a. Da mesma forma, uma informação sobre o tempo de amostra pode ser obtida.
Além disso, algumas durações de transições de tempo distorcido (warped_trans_len_left; warped_trans_len_right) são calculadas, por exemplo usando um algoritmo 1032 mostrado na Figura 10b. Opcionalmente, as durações de transição de distorção 5 de tempo pode ser adaptada dependendo de um tipo de janela ou um comprimento de transformada, por exemplo usando um algoritmo mostrado no numeral de referência 1034 na Figura 10b. Além disso, uma assim chamada "primeira posição" e uma assim chamada "última posição" podem ser computadas com base nas informações de durações 10 de transição, por exemplo usando um algoritmo mostrado no numeral de referência 1036 na Figura 10b. Para resumir, será feito um ajuste de posições de amostra e durações de janela, que pode ser realizado pelo aparelho 53.0__ou__no_passo__.6.40 _do mé.tpdo__600 _ A partir de "warp_contour[]", pode ser computado um vetor das 15 posições de amostra ("sample_pos[]") das amostras de tempo distorcido em uma escala de tempo linear. Para isto, primeiro o contorno de tempo pode ser gerado usando o algoritmo mostrado nos numerais de referência 1010, 1012. Com as funções auxiliares "warp_in_vec()" e "warp_time_inv()", que são mostradas nos 20 numerais de referência 1020 e 1022, o vetor de posição de amostra ("sample_pos[]") e as durações de transição ("warped_trans_len_left" e "warped_trans_len_right") são computados, por exemplo usando os algoritmos mostrados nos numerais de referência 1030, 1032, 1034 e 1036. Da mesma forma, a 25 informação de controle de distorção de tempo 512 é obtida. RECONSTRUÇÃO DE SINAL DE TEMPO DISTORCIDO
A seguir, a reconstrução de sinal de tempo distorcido, que pode ser realizada com base na informação de controle de distorção de tempo será brevemente discutida para colocar o cômputo do contorno de distorção de tempo no contexto próprio.
A reconstrução de um sinal de áudio compreende a execução de uma transformada inversa de cossenos discreta modificada, que não é descrita aqui em detalhe, porque é bem conhecida para qualquer técnico no assunto. A execução da transformada inversa de cossenos discreta modificada permite reconstruir amostras de dominio de tempo distorcido com base em um 10 conjunto de coeficientes de dominio de frequência. A execução da IMDCT pode, por exemplo, ser feita na forma de estrutura, que significa, por exemplo, que uma estrutura de 2048 amostras de dominio de tempo distorcido é reconstruída com base em um conjunto de 1024 coeficientes de dominio de frequência. Para a correta 15 reconstrução é necessário que não mais do que duas janelas subsequentes se sobreponham. Devido à natureza da TW-MDCT poderia . ocorrer que uma porção de tempo inversamente distorcido de uma estrutura se estenda até uma estrutura não-vizinha, desta forma violando o pré-requisito afirmado acima. Portanto a duração de 20 desvanecimento da forma de janela . precisa ser encurtada calculando-se os valores apropriados de warped_trans_len_left e warped__trans_len__right mencionados acima.
Uma janela e troca de bloco 650b é então aplicado às amostras de dominio de tempo obtidas a partir da IMDCT. A 25 janela e troca de bloco podem ser aplicados às amostras de dominio de tempo distorcido fornecidas pela IMDCT 650a na dependência da informação de controle de distorção de tempo, para obter amostras de dominio de tempo distorcido em janela. Por exemplo, dependendo de uma informação, ou elemento, de "window shape", diferentes v — protótipos de janela de transformada sobreamostrada podem ser % s usados, em que o comprimento das janelas sobreamostradas pode ser dado pela equação mostrada no numeral de referência 1040 na Figura 5 10c. Por exemplo, para um primeiro tipo de forma de janela (por exemplo, window_shape==l) , os coeficientes de janela são dados por uma janela derivada de "Kaiser-Bessel" (KBD) de acordo com a definição mostrada no numeral de referência 1042 na Figura 10c, em que W', a "função de janela central de Kaiser-Bessel", é definida 10 como mostrado no numeral de referência 1044 na Figura 10c.
De outra forma, ao usar uma forma de janela diferente (por exemplo, se window_shape==0), uma janela de seno P°de ser empregada de acordo com__a_..def inição„__no numeral de referência 1046. Para todos os tipos de sequências de janela 15 ("window_sequences"), o protótipo usado para a parte de janela esquerda é determinado pela forma de janela do bloco anterior. A fórmula mostrada no numeral de referência 1048 na Figura 10c expressa este fato. De maneira similar, o protótipo para forma de 19 janela direita é determinado pela fórmula mostrada no numeral de referência 1050 na Figura 10c.
A seguir, será descrita a aplicação das janelas acima descritas às amostras de dominio de tempo distorcido fornecidas pela IMDCT. Em algumas configurações, a informação para uma estrutura pode ser fornecida por uma pluralidade de sequências 25 curtas (por exemplo, oito sequências curtas) . Em outras configurações, a informação para uma estrutura pode ser fornecida usando blocos de diferentes durações, em que um tratamento especial pode ser necessário para sequências de inicio, sequências de parada e/ou sequências de durações não-padrão. Entretanto, como o comprimento transicional pode ser determinado como descrito acima, pode ser suficiente diferenciar entre estruturas que foram codificadas usando oito sequências curtas (indicadas por uma 5 informação de tipo de estrutura apropriada "eight_short_sequence") e todas as outras estruturas.
Por exemplo, em uma estrutura descrita por uma sequência curta de oito, um algoritmo mostrado como numeral de referência 1060 na Figura 10d pode ser aplicado para a aplicação 0 da janela. Em contraste, para estruturas codificadas usando outras informações, um algoritmo é mostrado no numeral de referência 1064 na Figura 10e pode ser aplicado. Em outras palavras, a porção semelhante a código C mostrada_no__numeral_.de. referência__1060 ,na Figura 10d descreve a aplicação da janela e sobreposição-soma > interna de uma assim chamada "oito sequências curtas". Em contraste, a porção semelhante a código C mostrada no numeral de referência 1064 na Figura 10d descreve a aplicação de janela em outros casos. RE AMOSTRAGEM A seguir, será descrita a distorção de tempo inversa 650c das amostras de dominio de tempo distorcido em janela na dependência da informação de controle de distorção de tempo, pela qual amostras de dominio de tempo amostradas regularmente, ou simplesmente amostras de dominio de tempo, são obtidas por 25 reamostragem variável com o tempo. Na reamostragem variável com o tempo, o bloco em janela z[] é reamostrado de acordo com as posições amostradas, por exemplo usando uma resposta de impulso mostrada no numeral de referência 1070 na Figura 10f. Antes da reamostragem, o bloco em janela pode ser preenchido com zeros em ambas as extremidades, como mostrado no numeral de referência 1072 na Figura 10f. A reamostragem em si é descrita pela seção de pseudo-código mostrada no numeral de referência 1074 na Figura 5 10f. PROCESSAMENTO DE ESTRUTURA PÓS-REAMOSTRADOR
A seguir, será descrito um pós-processamento opcional 650d das amostras de dominio de tempo. Em algumas configurações, o processamento de estrutura pós-reamostragem pode 10 ser realizado na dependência de um tipo da sequência de janela.
Dependendo do parâmetro "window_sequence", certos passos de processamento adicionais podem ser aplicados. Por exemplo, se.. ,a ..sequência., de - janela é.^..uma assim chamada "EIGHT_SHORT_SEQUENCE", uma assim chamada "LONG_START_SEQUENCE", uma assim chamada "STOP_START_SEQUENCE", uma assim chamada "STOP_START__1152_SEQUENCE" seguida por uma assim chamada LPD_SEQUENCE, pode ser realizado um pós- processamento como mostrado nos numerais de referência 1080a, 1080b, 1082. Por exemplo, se a próxima sequência de janela for uma assim chamada "LPD_SEQUENCE", uma janela de correção Wcorr(n) pode ser calculada como mostrada no numeral de referência 1080a, levando em conta as definições mostradas no numeral de referência 1080b. Também. A janela de correção Wcorr(n) pode ser aplicada como mostrado no numeral de referência 1082 na Figura 10g.
Para todos os outros casos, nada pode ser feito, como pode ser visto no numeral de. referência 1084 na Figura 10g. SOBREPOSIÇÃO E SOMA COM SEQUÊNCIAS DE JANELA ANTERIORES
Além disso, uma sobreposição-e-soma 650e das amostras de dominio de tempo atuais com uma ou mais amostras 5 anteriores de dominio de tempo pode ser realizada. A sobreposição e soma pode ser a mesma para todas as sequências e pode ser descrita matematicamente como mostrado no numeral de referência 1086 na Figura 10g. LEGENDA
Com relação às explicações dadas, também se faz referência à legenda, que é mostrada nas Figuras 11a e lld. Em particular, o comprimento de janela de sintese N para a ... transformada .inversa, é tipicamente uma função _do....elemento de sintaxe "window_sequence" e do contexto algorítmico. Pode ser por 15 exemplo definida como mostrado no numeral de referência 1190 da Figura 11b. CONFIGURAÇÃO DE ACORDO COM A FIGURA 13 A Figura 13 mostra um diagrama esquemático de blocos de um meio 1300 para fornecer um contorno reconstruído de 20 informação de distorção de tempo que assume a funcionalidade do meio 520 descrita com referência à Figura 5. Entretanto, os caminhos e buffers de dados são mostrados em maiores detalhes. O meio 1300 compreende uma calculadora de valor de nó de distorção 1344, que assume a função da calculadora de valor de nó de 25 distorção 544. A calculadora de valor de nó de distorção 1344 recebe um indice de livro de código "tw_ratio[]" da proporção de distorção como uma informação de proporção de distorção codificada. A calculadora de valor de nó de distorção compreende uma tabela de valor de distorção representando, por exemplo, o mapeamento de um indice de proporção de distorção de tempo sobre um valor de proporção de distorção de tempo representado na Figura 9c. A calculadora de valor de nó de distorção 1344 pode 5 adicionalmente compreender um multiplicador para realizar o algoritmo representado no numeral de referência 910 da Figura 9a.
Da mesma forma, a calculadora de valor de nó de distorção fornece valores de nó de distorção "warp_node_values[i]". Adicionalmente, o meio 1300 compreende um interpolador de contorno de distorção 10 1348, que assume a função do interpolador 540a, e que pode ser figurado para realizar o algoritmo mostrado no numeral de referência 920 na Figura 9a, desta forma obtendo valores do novo contorno de distorção ("new warp contour").- O.. .. meio.,. 1300 adicionalmente compreende um novo buffer de contorno de distorção 15 1350, que armazena os valores do novo contorno de distorção (isto é warp_contour [i] , com 2 • n_long^i<3 • n_long) . O meio 1300 adicionalmente compreende um buffer/atualizador de contorno de distorção passado 1360, que armazena a "última porção de contorno de distorção de tempo" e a "porção de contorno de distorção de 20 tempo atual" e atualiza os conteúdos da memória em resposta a uma rescalação e em resposta a uma conclusão do processamento da atual estrutura. Desta forma, o buffer/atualizador de contorno de distorção passado 1360 pode estar em cooperação com o rescalador de contorno de distorção passado 1370, tal que o buffer/atualizador de contorno de distorção passado e o rescalador de contorno de distorção passado juntos cumprem a funcionalidade dos algoritmos 930, 932, 934, 936, 950, 960. Opcionalmente, o buffer/atualizador de contorno de distorção passado 1360 pode também assumir a funcionalidade dos algoritmos 932, 936, 952, 954, t . 962, 964.
Desta forma, o meio 1300 fornece o contorno de distorção ("warp contour") e otimamente também fornece os valores 5 de soma de contorno de distorção. CODIFICADOR DE SINAL DE ÁUDIO DE ACORDO COM A FIGURA 14
A seguir, será descrito um codificador de sinal de áudio de acordo com um aspecto da invenção. O codificador de “ 10 sinal de áudio da Figura 14 é designado em sua plenitude com 1400.
O codificador de sinal de áudio 1400 é configurado para receber um sinal de áudio 1410 e, opcionalmente, uma informação de contorno de distorção_1412 fornecida..externamente e. associada com o. sinal de áudio 1410. Adicionalmente, o codificador de sinal de áudio 15 1400 é configurado para prover uma representação codificada 1440 do sinal de áudio 1410.
O codificador de sinal de áudio 1400 compreende um codificador de contorno de distorção de tempo 1420, configurado para receber uma informação de contorno de distorção de tempo 1422 20 associado com o sinal de áudio 1410 e para fornecer uma informação de contorno de distorção de tempo codificado 1424 com base nele.
O codificador de sinal de áudio 1400 adicionalmente compreende um processador de sinal de distorção de tempo (ou codificador de sinal de distorção de tempo) 1430 que é 25 configurado para receber o sinal de áudio 1410 e para fornecer, com base nele, uma representação codificada de distorção de tempo 1432 do sinal de áudio 1410, levando em conta uma distorção de tempo descrita pela informação de distorção de tempo 1422. A representação codificada 1414 do sinal de áudio 1410 compreende a informação de contorno de distorção de tempo codificado 1424 e a representação codificada 1432 do espectro do sinal de áudio 1410.
Opcionalmente, o codificador de sinal de áudio 1400 compreende uma calculadora de informação de contorno de distorção 1440, que é configurada para prover a informação de contorno de distorção de tempo 1422 com base no sinal de áudio 1410. Alternativamente, entretanto, a informação de contorno de distorção de tempo 1422 pode ser fornecido com base na informação 10 de contorno de distorção fornecida externamente 1412.
O codificador de contorno de distorção1 de tempo 1420 pode ser configurado para computar uma proporção entre valores subsequentes de _nó do contorno de distorção . de .tempo descrito pela informação de contorno de distorção de tempo 1422.
Por exemplo, os valores de nó podem ser valores de amostra do contorno de distorção de tempo representados pela informação de contorno de distorção de tempo. Por exemplo, se a informação de contorno de distorção de tempo compreende uma pluralidade de valores para cada estrutura do sinal de áudio 1410, os valores de 20 nó de distorção de tempo podem ser um subconjunto verdadeiro deste informação de contorno de distorção de tempo. Por exemplo, os valores de nó de distorção de tempo podem ser um subconjunto verdadeiro periódico dos valores de contorno da distorção de tempo. Um valor de nó de contorno de distorção de tempo pode estar 25 presente conforme N das amostras de áudio, em que N pode ser maior do que ou igual a 2.
A calculadora de proporção de valor de nó de contorno de tempo pode ser configurada para computar uma proporção entre valores subsequentes de nó de distorção de tempo do contorno de distorção de tempo, desta forma fornecendo uma informação que descreve uma proporção entre valores subsequentes de nó do contorno de distorção de tempo. Um codificador de proporção do 5 codificador de contorno de distorção de tempo pode ser configurado para codificar a proporção entre valores subsequentes de nó do contorno de distorção de tempo. Por exemplo, o codificador de proporção pode mapear diferentes proporções para diferentes indices do livro de códigos. Por exemplo, um mapeamento pode ser 10 escolhido tal que as proporções fornecidas pela calculadora de proporção de valor de contorno de distorção de tempo estejam dentro de uma faixa entre 0,9 e 1,1, ou mesmo entre 0,95 e 1,05. Da mesma forma, o codificador de proporção pode ser configurado para mapear esta faixa para diferentes indices de livro de código.
Por exemplo, as correspondências mostradas na tabela da Figura 9c podem agir como pontos de apoio neste mapeamento, tal que, por exemplo, uma proporção de 1 seja mapeada sobre um indice de livro de código de 3, enquanto uma proporção de 1,0057 seja mapeada para um indice de livro de código de 4, e assim por diante (comparar 20 Figura 9c). Valores de proporção entre aqueles mostrados na tabela da Figura 9c podem ser mapeados para apropriados indices de livro de código, por exemplo para o indice de livro de código do mais próximo valor de proporção para o qual o indice de livro de código é mostrado na tabela da Figura 9c.
Naturalmente, diferentes codificações podem ser usadas tal que, por exemplo, um número de indices de livro de código disponíveis pode ser escolhido maior ou menor do que o mostrado aqui. Também, a associação entre valores de nó de contorno de distorção e índices dos valores do livro de códigos pode ser escolhida apropriadamente. Também, os índices de livro de código podem ser codificados, por exemplo, usando uma codificação binária, opcionalmente usando uma codificação de entropia. Da mesma forma, são obtidas as proporções codificadas 1424.
O processador de sinal de distorção de tempo 1430 compreende um conversor de distorção de tempo do domínio temporal para o domínio de frequências 1434, que é configurado 10 para receber o sinal de áudio 1410 e uma informação de contorno de distorção de tempo 1422a associado com o sinal de áudio (ou uma versão codificada deste), e para fornecer, com base nele, uma representação de domínio espectral (domínio de frequências) 1436.
A informação de contorno de distorção de tempo 1422a pode preferivelmente ser obtida a partir da informação codificada 1424 fornecida pelo codificador de contorno de distorção de tempo 1420 usando um decodificador de distorção 1425. Desta forma, pode-se perceber que o codificador (em particular o 20 seu processador de sinal de distorção de tempo 1430) e o decodificador (que recebe a representação codificada 1414 do sinal de áudio) opera nos mesmos contornos de distorção, a saber o contorno de distorção (de tempo) decodificado. Entretanto, em uma configuração simplificada, a informação de contorno de distorção 25 de tempo 1422a usado pelo processador de sinal de distorção de tempo 1430 pode ser idêntico à informação de contorno de distorção de tempo 1422 inserida no codificador de contorno de distorção de
O conversor de distorção de tempo do dominio temporal para o dominio de frequências 1434 pode, por exemplo, considerar uma distorção de tempo ao formar a representação de dominio espectral 1436, por exemplo usando uma operação de 5 reamostragem variável com o tempo do sinal de áudio 1410.
Alternativamente, entretanto, a reamostragem variável com o tempo e a conversão de dominio temporal para dominio de frequências podem ser integradas em um único passo de processamento. O processador de sinal de distorção de tempo também compreende um 10 codificador de valor espectral 1438, que é configurado para codificar a representação de dominio espectral 1346. O codificador de valor espectral 1438 pode, por exemplo, ser configurado para em consideração o mascaramento _ perceptive.. Também,. o codificador de valor espectral 1438 pode ser configurado para adaptar a exatidão de codificação à relevância perceptiva das bandas de frequência e para aplicar uma codificação de entropia. Da mesma forma, obtém-se a representação codificada 1432 do sinal de áudio 1410. CALCULADORA DE CONTORNO DE DISTORÇÃO DE TEMPO DE 20 ACORDO COM A FIGURA 15 A Figura 15 mostra o diagrama esquemático de blocos de uma calculadora de contorno de distorção de tempo, de acordo com outra configuração da invenção. A calculadora de contorno de distorção de tempo 1500 é configurada para receber uma 25 informação de proporção de distorção codificada 1510 para fornecer, com base nela, uma pluralidade de valores de nó de distorção 1512. A calculadora de contorno de distorção de tempo 1500 compreende, por exemplo, um decodificador de proporção de distorção 1520, que é configurado para derivar uma sequência de t valores de proporção de distorção 1522 a partir da informação de proporção de distorção codificada 1510. A calculadora de contorno de distorção de tempo 1500 também compreende uma calculadora de 5 contorno de distorção 1530, que é configurada para derivar a sequência de valores de nó de distorção 1512 a partir da sequência de valores de proporção de distorção 1522. Por exemplo, a calculadora de contorno de distorção pode ser configurada para obter os valores de nó de contorno de distorção começando a partir 10 de um valor inicial de contorno de distorção, em que proporções entre o valor inicial de contorno de distorção, associado com um nó inicial de contorno de distorção, e os valores de nó de contorno de distorção são determinados.pelos valores de proporção de distorção 1522. A calculadora de valor de nó de distorção é 15 também configurada para computar um valor de nó de contorno de distorção 1512 de um determinado nó de contorno de distorção que é espaçado a partir do nó inicial de contorno de distorção por um nó de contorno de distorção intermediário, com base em uma formação de produto compreendendo uma proporção entre o valor 20 inicial de contorno de distorção (por exemplo, 1) e o valor de nó de contorno de distorção do nó de contorno de distorção intermediário e uma proporção entre o valor de nó de contorno de distorção do nó de contorno de distorção intermediário e o valor de nó de contorno de distorção do determinado nó de contorno de 25 distorção como fatores.
A seguir, a operação da calculadora de contorno de distorção de tempo 1500 será brevemente discutida tomando referência às Figuras 16a e 16b...
A Figura 16a mostra uma representação gráfica de um cálculo sucessivo de um contorno de distorção de tempo. Uma primeira representação gráfica 1610 mostra uma sequência de indices de livro de código de proporção de distorção de tempo 1510 5 (index=0, index=l, index=2, index=3, index=7). Adicionalmente, a representação gráfica 1610 mostra uma sequência de valores de proporção de distorção (0,983, 0,988, 0,994, 1,000, 1,023) associados com os indices de livro de código. Adicionalmente, pode-se ver que um primeiro valor de nó de distorção 1621 (i=0) é 10 escolhido para ser 1 (em que 1 é um valor inicial) . Como pode ser visto, um segundo valor de nó de distorção 1622 (i=l) é obtido multiplicando-se o valor inicial de 1 com o primeiro valor de proporção de 0,983 (associado com o primeiro.indice -0) Também se pode ser visto que o terceiro valor de nó de distorção 1623 é 15 obtido ao se multiplicar o segundo valor de nó de distorção 1622 de 0,983 pelo segundo valor de proporção de distorção de 0,988 (associado com o segundo indice de 1) . Da mesma maneira, o quarto valor de nó de distorção 1624 é obtido ao se multiplicar o terceiro valor de nó de distorção 1623 pelo terceiro valor de 20 proporção de distorção de 0,994 (associado com um terceiro indice de 2) . Da mesma forma, uma sequência de valores de nó de distorção 1621, 1622, 1623, 1624, 1625, 1626 é obtida.
Um respectivo valor de nó de distorção é 25 efetivamente obtido tal que seja um produto do valor inicial (por exemplo, 1) e todos os valores intermediários de proporção de distorção entre os nós de distorção inicial 1621 e o respectivo valor de nó de distorção 1622 a 1626.
Uma representação gráfica 1640 ilustra uma , interpolação linear entre os valores de nó de distorção. Por exemplo, os valores interpolados 1621a, 1621b, 1621c poderiam ser obtidos em um decodificador de sinal de áudio entre dois valores 5 adjacentes de nó de distorção de tempo 1621, 1622, por exemplo fazendo uso de uma interpolação linear. A Figura 16b mostra uma representação gráfica de uma reconstrução de contorno de distorção de tempo usando um reinicio periódico a partir de um valor inicial predeterminado, " 10 que pode opcionalmente ser implementado na calculadora de contorno de distorção de tempo 1500. Em outras palavras, o reinicio repetido ou periódico não é uma característica essencial, desde que um estouro numérico possa ser evitado por qualquer outra medida apropriada no lado do codificador ou no lado do 15 decodificador. Como pode ser visto, uma porção de contorno de distorção pode começar a partir de um nó inicial 1660 em que os nós de contorno de distorção 1661, 1662, 1663, 1664 podem ser determinados. Para este propósito, valores de proporção de F distorção (0,983, 0,988, 0,965, 1,000) podem ser considerados, tal que os nós adjacentes de contorno de distorção 1661 a 1664 da primeira porção de contorno de distorção de tempo são separados por proporções determinadas por estes valores de proporção de distorção. Entretanto, uma segunda porção de contorno de distorção de tempo, adicional, pode ser iniciada após um nó de final 1664 da 25 primeira porção de contorno de distorção de tempo (compreendendo os nós 1660-1664) ter sido alcançado. A segunda porção de contorno de distorção de tempo pode começar a partir de um nó inicial 1665, que pode assumir o valor inicial predeterminado, independente de quaisquer valores de proporção de distorção. Da mesma forma, i valores de nó de distorção da segunda porção de contorno de distorção de tempo podem ser computados começando a partir do nó inicial 1665 da segunda porção de contorno de distorção de tempo 5 com base nos valores de proporção de distorção da segunda porção de contorno de distorção de tempo. Posteriormente, uma terceira porção de contorno de distorção de tempo pode começar a partir de um correspondente nó inicial 1670, que pode novamente assumir o valor inicial predeterminado independente de quaisquer valores de ■ 10 proporção de distorção. Da mesma forma, um reinicio periódico das porções de contorno de distorção de tempo é obtido. Opcionalmente, uma repetida renormalização pode ser aplicada, como descrita em detalhes acima. , - ■ ' ” J O CODIFICADOR DE SINAL DE ÁUDIO DE ACORDO COM A 15 FIGURA 17
A seguir, um codificador de sinal de áudio de acordo com outra configuração da invenção será brevemente descrito, tomando referência à Figura 17. O codificador de sinal ' de áudio 1700 é configurado para receber um sinal de áudio multi- canal 1710 e para fornecer uma representação codificada 1712 do sinal de áudio multi-canal 1710. O codificador de sinal de áudio 1700 compreende um provedor de representação de áudio codificado 1720, que é configurado para seletivamente fornecer uma representação de áudio compreendendo uma informação comum de 25 contorno de distorção, comumente associada com uma pluralidade de canais de áudio do sinal de áudio multi-canal, ou uma representação de áudio codificado compreendendo informação individual de contorno de distorção, individualmente associados com os diferentes canais de áudio da pluralidade de canais de áudio, dependentes de uma informação que descreve uma similaridade ou diferença entre contornos de distorção associados com os canais de áudio da pluralidade de canais de áudio.
Por exemplo, o codificador de sinal de áudio 1700 compreende uma calculadora de similaridade de contorno de distorção ou calculadora de diferença de contorno de distorção 1730 configurada para prover a informação 1732 que descreve a similaridade ou diferença entre contornos de distorção associados com os canais de áudio. O provedor de representação de áudio codificado compreende, por exemplo, um codificador seletivo de contorno de distorção de tempo 1722 configurado para receber a informação de contorno de distorção de tempo 1724 (que pode ser fornecido externamente ou que pode ser fornecido por uma calculadora de informação de contorno de distorção de tempo opcional 1734) e a informação 1732. Se a informação 1732 indicar que os contornos de distorção de tempo de dois ou mais canais de áudio são suficientemente semelhantes, o codificador seletivo de contorno de distorção de tempo 1722 pode ser configurado para prover uma informação conjunta de contorno de distorção de tempo codificado. A informação conjunta de contorno de distorção pode, por exemplo, se basear em uma média da informação de contorno de distorção de dois ou mais canais. Entretanto, alternativamente a informação conjunta de contorno de distorção pode se basear em uma única informação de contorno de distorção de um único canal de áudio, porém conjuntamente associados com uma pluralidade de canais. contornos de distorção de múltiplos canais de áudio não são suficientemente similares, o codificador seletivo de contorno de distorção de tempo 1722 pode fornecer informação codificada 5 separada dos diferentes contornos de distorção de tempo.
O provedor de representação de áudio codificado 1720 também compreende um processador de sinal de distorção de tempo 1726, que é também configurado para receber a informação de contorno de distorção de tempo 1724 e o sinal de áudio multi-canal 10 1710. O processador de sinal de distorção de tempo 1726 é configurado para codificar os múltiplos canais do sinal de áudio 1710. O processador de sinal de distorção de tempo 1726 pode compreender diferentes modos_ de -operação: Por" exemplo, o processador de sinal de distorção de tempo 1726 pode ser 15 configurado para seletivamente codificar canais de áudio individualmente ou codificá-los conjuntamente, explorando similaridades entre os canais. Em alguns casos, é preferivel que o processador de sinal de distorção de tempo 1726 seja capaz de codificar múltiplos canais de áudio da maneira comum tendo um 20 contorno comum de informação de distorção de tempo. Há casos em que um canal de áudio esquerdo e um canal de áudio direito exibem a mesma evolução de passo relativo, porém têm características de sinal diferentes em outros aspectos, por exemplo diferentes frequências fundamentais absolutas ou diferentes envelopes 25 espectrais. Neste caso, não é desejável codificar o canal de áudio esquerdo e o canal de áudio direito conjuntamente, por causa da significativa diferença entre o canal de áudio esquerdo e o canal de áudio direito. Não obstante, a evolução de passo relativo no canal de áudio esquerdo e no canal de áudio direito pode ser 3 paralela, tal que a aplicação de uma distorção de tempo comum é uma solução muito eficiente. Um exemplo de tal sinal de áudio é uma música polifônica, em que os conteúdos de múltiplos canais de 5 áudio exibem uma diferença significativa (por exemplo, são dominados por diferentes cantores ou instrumentos musicais), porém exibem similar variação de passo. Desta forma, a eficiência de codificação pode ser significativamente melhorada ao fornecer a possibility de ter uma codificação conjunta dos contornos de F 10 distorção de tempo para múltiplos canais de áudio enquanto se mantém a opção de codificar separadamente os espectros de frequência dos diferentes canais de áudio para os quais é fornecido um contorno comum de informação.de passo. ——
O provedor de representação de áudio codificado 1720 opcionalmente compreende um codificador de informação lateral 1728, que é configurado para receber a informação 1732 e para fornecer uma informação lateral indicando se um contorno de distorção comum codificado está fornecido para múltiplos canais de P áudio ou se contornos de distorção individuais codificados são fornecidos para os múltiplos canais de áudio. Por exemplo, tal informação lateral pode ser fornecida na forma de um flag de 1 bit chamado "common_tw".
Para resumir, o codificador seletivo de contorno de distorção de tempo 1722 seletivamente fornece representações 25 individuais codificadas dos contornos de distorção de tempo de áudio associados com múltiplos sinais de áudio, ou uma representação codificada conjunta de contorno de distorção de tempo representando um único conjunto de contorno de distorção de tempo associado com os múltiplos canais de áudio. O codificador de informação lateral 1728 opcionalmente fornece uma informação lateral indicando se são fornecidas representações individuais de contorno de distorção de tempo ou uma representação de conjunto de 5 contorno de distorção de tempo. O processador de sinal de distorção de tempo 1726 fornece representações codificadas dos múltiplos canais de áudio. Opcionalmente, uma informação codificada comum pode ser fornecida para múltiplos canais de áudio. Entretanto, tipicamente é até possivel fornecer 10 representações individuais codificadas de múltiplos canais de áudio, para os quais uma representação comum de contorno de distorção de tempo está disponível, tal que diferentes canais de áudio com diferentes conteúdos de áudio, porém distorções de tempo idênticas são apropriadamente representados. Consequentemente, a 15 representação codificada 1712 compreende informação codificada fornecida pelo codificador seletivo de contorno de distorção de tempo 1722, e o processador de sinal de distorção de tempo 1726 e, opcionalmente, o codificador de informação lateral 1728. DECODIFICADOR DE SINAL DE ÁUDIO DE ACORDO COM A 20 FIGURA 18 A Figura 18 mostra um diagrama esquemático de blocos de um decodificador de sinal de áudio de acordo com uma configuração da invenção. O decodificador de sinal de áudio 1800 é configurado para receber uma representação de sinal de áudio 25 codificado 1810 (por exemplo, a representação codificada 1712) e para fornecer, com base nela, uma representação decodificada 1812 do sinal de áudio multi-canal. O decodificador de sinal de áudio decodificador de distorção de tempo 1830. 0 extrator de informação lateral 1820 é configurado para extrair uma informação de aplicação de contorno de distorção de tempo 1822 e uma informação de contorno de distorção 1824 a partir da representação de sinal de áudio 5 codificado 1810. Por exemplo, o extrator de informação lateral 1820 pode ser configurado para reconhecer se um único, contorno comum de informação de distorção de tempo está disponível para múltiplos canais do sinal de áudio codificado, ou se a informação de contorno de distorção de tempo separado está disponível para os múltiplos 10 canais. Da mesma forma, o extrator de informação lateral pode fornecer tanto a informação de aplicação de contorno de distorção de tempo 1822 (indicando se está disponível informação de contorno de distorção de tempo conjunto ou individual) quanto a informação * de contorno de distorção de tempo 1824 (descrevendo uma evolução 15 temporal do contorno comum (conjunto) de distorção de tempo ou dos contornos de distorção de tempo individuais). O decodificador de distorção de tempo 1830 pode ser configurado para reconstruir a representação decodificada do sinal de áudio multi-canal com base na representação de sinal de áudio codificado 1810, levando em 20 consideração a distorção de tempo descrita pela informação 1822, 1824. Por exemplo, o decodificador de distorção de tempo 1830 pode ser configurado para aplicar um contorno comum de distorção de tempo para decodificar diferentes canais de áudio, para os quais está disponível informação individual codificada sobre domínio de 25 frequências. Da mesma forma, o decodificador de distorção de tempo 1830 pode, por exemplo, reconstruir diferentes canais do sinal de áudio multi-canal, que compreendem distorção de tempo similar ou idêntica, porém passo diferente. STREAM DE ÁUDIO DE ACORDO COM AS FIGURAS 19A A t 19E
A seguir, será descrito um stream de áudio, que compreende uma representação codificada de um ou mais sinais de 5 canal de áudio e um ou mais contornos de distorção de tempo. A Figura 19a mostra uma representação gráfica de um assim chamado elemento de stream de dados "USAC_raw_data_block" que pode compreender um elemento de canal único (SCE), um elemento de dois canais (CPE) ou uma combinação de um ou mais elementos de 10 canal único e/ou um ou mais elementos de dois canais.
O "USAC_raw_data_block" pode tipicamente compreender um bloco de dados de áudio codificados, enquanto informação adicional sobre contorno de distorção de tempo pode ser fornecida em um elemento separado de stream de dados. Não 15 obstante, é usualmente possivel codificar alguns dados de contorno de distorção de tempo no "USAC_raw_data_block".
Como pode ser visto a partir da Figura 19b, um elemento de canal único tipicamente compreende um stream de canal de dominio de frequências ("fd_channel_stream"), que será 20 explicado em detalhes com referência à Figura 9d.
Como pode ser visto a partir da. Figura 19c, um elemento de dois canais ("channel_pair_element") tipicamente compreende uma pluralidade de streams de canal de dominio de frequências. Também, o elemento de dois canais pode compreender 25 informação de distorção de tempo. Por exemplo, um flag de ativação de distorção de tempo ("tw_MDCT") que pode ser transmitido em um elemento de stream de dados de configuração ou no USAC_saw_data_block" determina se a informação de distorção de tempo está incluida no elemento de dois canais. Por exemplo, se o flag "tw_MDCT" indicar que a distorção de tempo está ativa, o elemento de dois canais pode compreender um flag ("common_tw") que indica se há uma distorção de tempo comum para os canais de áudio 5 do elemento de dois canais. Se o referido flag (common_tw) indicar que há uma distorção de tempo comum para múltiplo dos canais de áudio, então uma informação comum de distorção de tempo (tw_data) é incluida no elemento de dois canais, por exemplo, separado dos streams de canal de dominio de frequências.
Tomando referência agora à Figura 19d, o stream de canal de dominio de frequências é descrito. Como pode ser visto a partir da Figura 19d, o stream de canal de dominio de frequências, por exemplo, compreende uma informação de ganho global. Também, o stream de canal de dominio de frequências compreende dados de distorção de tempo, se a distorção de tempo estiver ativa (flag "tw_MDCT" ativo) e se não houver informação comum de distorção de tempo para canal de sinal de áudio múltiplo (o flag "common_tw" está inativo).
Adicionalmente, um stream de canal de dominio de 20 frequências também compreende dados de fator de escala ("scale_factor_data") e dados espectrais codificados (por exemplo, dados espectrais aritmeticamente codificados "ac_spectral_data").
Tomando referência agora à Figura 19e, a sintaxe dos dados de distorção de tempo será brevemente discutida. Os 25 dados de distorção de tempo podem por exemplo, opcionalmente, compreender um flag (por exemplo, "tw_data_present" ou "Dados de Passo ativos") indicando se os dados de distorção de tempo estão presentes. Se os dados de distorção de tempo estiverem presentes, (isto é o contorno de distorção de tempo não está plano) os dados de distorção de tempo podem compreender uma sequência de uma pluralidade de valores de proporção de distorção de tempo codificados (por exemplo, "tw_ratio [i]" ou "pitchldx [i]"), que 5 podem, por exemplo, ser codificados de acordo com a tabela do livro de códigos da Figura 9c.
Desta forma, os dados de distorção de tempo podem compreender um flag indicando que não há dados de distorção de tempo disponíveis, que pode ser estabelecido por um codificador de 10 sinal de áudio, se o contorno de distorção de tempo for constante (as proporções de distorção de tempo são aproximadamente iguais a 1,000). Em contraste, se o contorno de distorção de tempo estiver variando, proporções entre nós .subsequentes de contorno de distorção de tempo podem ser codificadas usando os indices de 15 livro de código que compõem a informação "tw_ratio".
CONCLUSÃO
Resumindo o texto acima, as configurações de acordo com a invenção trazem diferentes melhorias no campo de distorção de tempo.
Os aspectos da invenção descritos aqui estão no contexto de um codificador de tempo distorcido por transformada MDCT (vide, por exemplo, a referência [1]) . Configurações de acordo com a invenção fornecem métodos para um desempenho melhorado de um codificador de tempo distorcido por transformada MDCT.
De acordo com um aspecto da invenção, é fornecido um formato de bitstream particularmente eficiente. A descrição do formato de bitstream baseia-se em e aperfeiçoa a sintaxe de bitstream MPEG-2 AAC (vide, por exemplo, a referência [2] ) , porém é naturalmente aplicável a todos os formatos de bitstream com um cabeçalho de descrição geral no inicio de um stream e uma sintaxe de informação na forma de estrutura individual. Por exemplo, a seguinte informação lateral pode 5 ser transmitida no bitstream:
Em geral, um flag de um bit (por exemplo, a saber "tw_MDCT") pode apresentar na configuração especifica de áudio geral (GASC), indicando se a distorção de tempo está ativa ou não. Dados de passo podem ser transmitidos usando a sintaxe mostrada na Figura 10 19e ou a sintaxe mostrada na Figura 19f. Na sintaxe mostrada na Figura 19f, o número de passos ("numPitches") pode ser igual a 16, e o número de bits de passo em ("numPitchBits") pode ser igual a 3. Em outras palavras, pode haver 16 valores de proporção-de distorção codificados por porção de contorno de distorção de tempo (ou por 15 sinal de estrutura de áudio), e cada valor de proporção de contorno de distorção pode ser codificado usando 3 bits.
Além disso, em um elemento de canal único (SCE) os dados de passo (pitch_data[]) podem ser localizados antes dos dados de seção no canal individual, se a distorção estiver ativa.
Em um elemento de dois canais (CPE) , um flag de passo comum sinaliza se houver dados de um passo comum para ambos os canais, que segue após isto, se não, os contornos de passo individuais são encontrados nos canais individuais.
A seguir, será dado um exemplo para um elemento de dois canais. Um exemplo poderia ser um sinal de uma única fonte de sons harmônicos, disposta dentro do panorama estéreo. Neste caso, os contornos de passo relativo para o primeiro canal e o segundo canal serão iguais ou difeririam apenas ligeiramente devido a alguns pequenos erros na estimativa da variação. Neste caso, o codificador pode decidir que ao invés de enviar dois contornos de passo codificados separados para cada canal, enviar apenas um contorno de passo que é uma média dos contornos de passo 5 do primeiro e segundo canal, e usar o mesmo contorno ao aplicar a TW-MDCT em ambos os canais. Por outro lado, poderia haver um sinal onde a estimativa do contorno de passo gera diferentes resultados para o primeiro e segundo canal respectivamente. Neste caso, os contornos de passo individualmente codificados são enviados dentro 10 do canal correspondente.
A seguir, será descrita uma decodificação vantajosa de dados de passo de contorno, de acordo com um aspecto da invenção. Por exemplo, se o flag "active■_PitchData" - for 0, o contorno de passo é estabelecido para 1 para todas as amostras na 15 estrutura, do contrário os nós de contorno de passo individuais são computados como segue: • há numPitches + 1 nós, • nó [0] é sempre 1,0; • nó [i]=nó[i-1]-relChange[i] (i=l..numPitches + 1) , onde o relChange é obtido por quantização inversa do pitchldx[i].
O contorno de passo é então gerado pela interpolação linear entre os nós, onde as posições de amostra de nós são 0:frameLen/numPitches:frameLen. ALTERNATIVAS DE IMPLEMENTAÇÃO
Dependendo de certos requisitos de implementação, as configurações da invenção podem ser implementadas em hardware ou em software. A implementação pode ser realizada usando uma midia de armazenamento digital, por exemplo um disquete, um DVD, um CD, um ROM, um PROM, um EPROM, um EEPROM ou uma memória FLASH, tendo sinais de controle eletronicamente legíveis armazenados nela, que cooperam (ou são capazes de cooperar) com um sistema de 5 computador programável tal que o respectivo método seja executado.
Algumas configurações de acordo com a invenção compreendem um carregador de dados tendo sinais de controle eletronicamente legíveis, que são capazes de cooperar com um sistema de computador programável, tal que um dos métodos 10 descritos aqui seja executado.
Geralmente, as configurações da presente invenção podem ser implementadas como um produto de programa de computador com um código de programa, o código de programa sendo operante para executar um dos métodos quando o produto do programa de 15 computador roda em um computador. O código de programa pode, por exemplo, ser armazenado em um carregador legivel pela máquina.
Outras configurações compreendem o programa de computador para executar um dos métodos descritos aqui, armazenado em um carregador legivel pela máquina.
Em outras palavras, uma configuração do método inventivo é, portanto, um programa de computador que tem um código de programa para executar um dos métodos descritos aqui, quando o programa de computador roda em um computador.
Uma configuração adicional dos métodos inventivos 25 é, portanto, um carregador de dados (ou uma midia de armazenamento digital, ou uma midia legivel por computador) compreendendo, nela registrado, o programa de computador para executar um dos métodos descritos aqui...
Uma configuração adicional do método inventivo é. portanto, um stream de dados ou uma sequência de sinais representando o programa de computador para executar um dos métodos descritos aqui. O stream de dados ou a sequência de sinais 5 pode, por exemplo, ser configurado para ser transferido por meio de uma conexão para comunicação de dados, por exemplo, por meio da Internet.
Uma configuração adicional compreende um meio de processamento, por exemplo um computador, ou um dispositivo lógico 10 programável, configurado para ou adaptado para executar um dos métodos descritos aqui. Al
Uma configuração adicional compreende um computador tendo nele instalado o programa de.... computador para executar um dos métodos descritos aqui.
Em algumas configurações, um dispositivo lógico programável (por exemplo, um arranjo de portas programável em campo) pode ser usado para realizar algumas ou todas as funcionalidades dos métodos descritos aqui. Em algumas configurações, um field programmable gate array pode cooperar com 20 um microprocessador a fim de executar um dos métodos descritos aqui . REFERÊNCIAS [1] L. Villemoes, "Time Warped Transform Coding of Audio Signals", PCT/EP2006/010246, Int. patent application, 25 November 2005. [2] Generic Coding of Moving Pictures and Associated Audio: Advanced Audio Coding. International Standard 13818-7, ISO/IECJTC1/SC29/WG11 Moving Pictures Expert Group, 1997.

Claims (14)

1. “CALCULADORA DE CONTORNO DE DISTORÇÃO DE TEMPO”, compreendendo calculadora de contorno de distorção de tempo (320;540;1344,1348;1500) para uso em um decodificador de sinal de áudio (200;300;1800) para fornecer uma representação de sinal de áudio decodificado (312;1812) com base em uma representação de sinal de áudio codificado (310;1810), caracterizado pelo fato de que a calculadora de contorno de distorção de tempo é configurada para receber uma informação de proporção de distorção codificada (316;510; 1510; tw_ratio[]), para derivar uma sequência de valores de proporção de distorção (1522;warp_value_tbl[tw_ratio[k]]) a partir da informação de proporção de distorção codificada, e para obter valores de nó de contorno de distorção (warp_node_values;1512) começando a partir de um valor inicial de contorno de distorção de tempo (1); onde as proporções entre os valores de nó de contorno de distorção de tempo e o valor inicial de contorno de distorção de tempo (1) associado com um nó inicial de contorno de distorção de tempo (1621) são determinadas pelos valores de proporção de distorção; e onde a calculadora de contorno de distorção de tempo é configurada para computar um valor de nó de contorno de distorção de tempo (warp_node_values;1512) de um dado nó de contorno de distorção de tempo (1623), que é espaçado a partir do nó inicial de contorno de distorção de tempo (1621) por um nó intermediário de contorno de distorção de tempo (1622) com base em uma formação de produto compreendendo uma proporção entre o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo (1622) e o valor inicial de contorno de distorção de tempo (1) e uma proporção entre o valor de nó de contorno de distorção de tempo do dado nó de contorno de distorção de tempo (1623) e o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo (1622) como fatores.
2. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com a reivindicação 1, caracterizado pela calculadora de contorno de distorção de tempo é configurada para periodicamente reiniciar a partir do valor inicial de contorno de distorção de tempo (1).
3. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com a reivindicação 1 ou 2, caracterizado pela calculadora de contorno de distorção de tempo ser configurada para mapear a informação de proporção de distorção codificada (316;510;1510;tw_ratio[]) sobre uma sequência de valores de proporção de distorção (1522; warp_value_tbl[tw_ratio[k]]) usando uma regra de mapeamento (990) compreendendo: uma regra de mapeamento (990) descreve um mapeamento de uma pluralidade de índices de livro de códigos de proporção de distorção (316;510;1510;tw_ratio[]) sobre valores correspondentes de proporção de distorção (1522;warp_value_tbl[tw_ratio]), uma a regra de mapeamento (990) escolhida tal que a regra de mapeamento compreende uma pluralidade de pares de valores recíprocos de proporção de distorção, tal que o produto de dois valores de proporção de distorção (1522;warp_value_tbl[tw_ratio[k]]) de um par de valores recíprocos de proporção de distorção fique entre 0,9997 e 1,0003.
4. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com qualquer uma das reivindicações de 1 a 3, caracterizado pela calculadora de contorno de distorção de tempo é configurada para mapear a informação de proporção de distorção codificada (316;510;1510;tw_ratio[]) sobre uma sequência de valores de proporção de distorção (1522;warp_value_table[tw_ratio]) usando uma regra de mapeamento (990) compreendendo: regra de mapeamento (990) descreve um mapeamento de uma pluralidade de índices de livro de códigos de proporção de distorção (tw_ratio) sobre valores correspondentes de proporção de distorção (1522; warp_value_table[tw_ratio]); regra de mapeamento é escolhida tal que os valores de proporção de distorção, sobre os quais os índices de livro de códigos de proporção de distorção são mapeados, estejam dentro de uma faixa entre 0,97 e 1,03.
5. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com qualquer uma das reivindicações de 1 a 4, caracterizado pela calculadora de contorno de distorção de tempo é configurada para mapear a informação de proporção de distorção codificada (316;510;1510;tw_ratio[]) sobre uma sequência de valores de proporção de distorção (1522;warp_value_table[tw_ratio]) usando uma regra de mapeamento (990) compreendendo: regra de mapeamento descreve um mapeamento de uma pluralidade de índices de livro de códigos de proporção de distorção (316;510;1510;tw_ratio[]) sobre valores correspondentes de proporção de distorção (1522;warp_value_table[tw_ratio]); e regra de mapeamento (990) é escolhida assimetricamente tal que uma gama de valores crescentes de proporção de distorção é maior do que uma gama de valores decrescentes de proporção de distorção.
6. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com qualquer uma das reivindicações de 1 a 5, caracterizado pela calculadora de contorno de distorção de tempo é configurada para receber uma informação lateral (tw_data_present) indicando um contorno de distorção de tempo não-variável ou um contorno de distorção de tempo variável para uma dada estrutura da representação de sinal de áudio codificado, e, na dependência da informação lateral (tw_data_present) indicando um contorno de distorção de tempo não-variável ou um contorno de distorção de tempo variável, para obter (910) os valores de nó de contorno de distorção de tempo (warp_node_values;1512) para a dada estrutura com base na informação de proporção de distorção codificada, ou para estabelecer os valores de nó de contorno de distorção de tempo (warp_node_values;1512) para a dada estrutura para o valor inicial de contorno de distorção (1).
7. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com qualquer uma das reivindicações de 1 a 6, caracterizado pela calculadora de contorno de distorção de tempo é configurada para interpolar linearmente entre os valores de nó de contorno de distorção de tempo (warp_node_values;1512), para obter valores de contorno de distorção de tempo (nov_warp_contour) de uma nova porção de contorno de distorção de tempo.
8. Calculadora de contorno de distorção de tempo (320;540;1344,1348;1500), de acordo com qualquer uma das reivindicações de 1 a 7, caracterizado pela calculadora de contorno de distorção de tempo é configurada para iterativamente obter uma sequência de valores de nó de contorno de distorção de tempo (warp_node_values;1512), onde a calculadora de contorno de distorção de tempo é configurada para obter um subsequente valor de nó de contorno de distorção de tempo (warp_node_values[i+1]) a partir de um valor de nó de contorno de distorção de tempo presente (warp_node_values[i]) ao se multiplicar o valor de nó de contorno de distorção de tempo presente com um correspondente valor de proporção de distorção de tempo (warp_value_tbl[tw_ratio[i]]).
9. Codificador de sinal de áudio (100;1400;1700) para fornecer uma representação codificada (150,152;1414;1712) de um sinal de áudio (110;1410;1710), o codificador de sinal de áudio caracterizado por compreender: um codificador de contorno de distorção de tempo (1420;1722) configurado para receber uma informação de contorno de distorção de tempo (1422;1724) associada com o sinal de áudio (1410;1710), para computar uma proporção entre subsequentes valores de nó do contorno de distorção de tempo, e para codificar a proporção entre subsequentes valores de nó do contorno de distorção de tempo; e um codificador de sinal de distorção de tempo (1430;1726) configurado para obter uma representação codificada (1432) de um espectro do sinal de áudio (1410;1710), levando em conta uma distorção de tempo descrita pela informação de contorno de distorção de tempo (1422;1724); onde a representação codificada (1414;1712) do sinal de áudio compreende as proporções codificadas (1412;tw_ratio[]) e a representação codificada (1432) do espectro.
10. Codificador de sinal de áudio (100;1400;1700), de acordo com a reivindicação 9, caracterizado pelo codificador de contorno de distorção de tempo (1420;1722) é configurado para checar, se um contorno de distorção de tempo não-plano está disponível para uma dada estrutura do sinal de áudio, e para estabelecer um flag (tw_data_present) dentro da representação codificada (1414;1712) do sinal de áudio (1410;1710) para indicar a ausência de um contorno de distorção de tempo variável se um contorno de distorção de tempo variável não estiver disponível para a dada estrutura do sinal de áudio; e para omitir uma inclusão de valores de proporção codificada (tw_ratio) na representação codificada do sinal de áudio se um contorno de distorção de tempo variável não estiver disponível para a dada estrutura do sinal de áudio.
11. Representação de sinal de áudio codificado (usac_raw_data_block()) representando um sinal de áudio, a representação de sinal de áudio caracterizado por compreender: uma representação de domínio de frequências codificada (scalefactor_data(),ac_spectral_data()) representando um ou mais canais de áudio reamostrados para distorção de tempo, reamostrados de acordo com uma distorção de tempo; e uma representação codificada (tw_data) de um contorno de distorção de tempo representando a distorção de tempo, em que a representação codificada do contorno de distorção de tempo compreende uma pluralidade de valores de proporção de distorção de tempo codificados (tw_ratio), onde os valores de proporção de distorção de tempo representam proporções entre subsequentes valores de nó (warp_node_values) do contorno de distorção de tempo.
12. Representação de sinal de áudio codificado (usac_raw_data_block()), de acordo com a reivindicação 11, caracterizado pela representação de sinal de áudio codificado compreende, conforme uma estrutura de áudio, um flag (tw_data_present) indicando a presença de uma representação codificada de um contorno de distorção de tempo (tw_ratio) para a respectiva estrutura.
13. Método para fornecer uma representação de sinal de áudio decodificado com base em uma representação de sinal de áudio codificado, caracterizado por compreender: recebimento de uma informação de proporção de distorção codificada (316; 510;1510;tw_ratio[]); derivação de uma sequência de valores de proporção de distorção (1522;warp_value_tbl[tw_ratio[k]])a partir da informação de proporção de distorção codificada; e obtenção de uma pluralidade de valores de nó de contorno de distorção de tempo (warp_node_values;1512) começando a partir de um valor inicial de contorno de distorção de tempo (1), onde os valores de nó de contorno de distorção de tempo e o valor inicial de contorno de distorção de tempo associado com o nó inicial de contorno de distorção de tempo são determinadas pelos valores de proporção de distorção; onde um valor de nó de contorno de distorção de tempo (warp_node_values;1512) de um dado nó de contorno de distorção de tempo (1623), que é espaçado a partir do nó inicial de contorno de distorção de tempo (1621) por um nó intermediário de contorno de distorção de tempo (1622), é computado com base em uma formação de produto, compreendendo uma proporção entre o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo (1622) e o valor inicial de contorno de distorção de tempo e uma proporção entre o valor de nó de contorno de distorção de tempo do dado nó de contorno de distorção de tempo (1623) e o valor de nó de contorno de distorção de tempo do nó intermediário de contorno de distorção de tempo (1622) como fatores.
14. Método para fornecer uma representação codificada de um sinal de áudio, caracterizado por compreender: recebimento de uma informação de contorno de distorção de tempo (1422;1724) associada com o sinal de áudio (1410;1710); cômputo de uma proporção entre subsequentes valores de nó do contorno de distorção de tempo; codificação da proporção entre subsequentes valores de nó do contorno de distorção de tempo; e obtenção de uma representação codificada (1432) de um espectro do sinal de áudio (1410;1710), levando em conta uma distorção de tempo descrita pela informação de contorno de distorção de tempo (1422;1724); onde a representação codificada (1414;1712) do sinal de áudio compreende as proporções codificadas e a representação codificada (1432) do espectro.
BRPI0906320-0A 2008-07-11 2009-07-01 Calculadora de contorno de distorção de tempo, codificador de sinal de áudio, representação de sinal de áudio codificado e seus métodos. BRPI0906320B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US7987308P 2008-07-11 2008-07-11
US61/079,873 2008-07-11
US10382008P 2008-10-08 2008-10-08
US61/103,820 2008-10-08
PCT/EP2009/004756 WO2010003581A1 (en) 2008-07-11 2009-07-01 Time warp contour calculator, audio signal encoder, encoded audio signal representation, methods and computer program

Publications (2)

Publication Number Publication Date
BRPI0906320A2 BRPI0906320A2 (pt) 2020-01-14
BRPI0906320B1 true BRPI0906320B1 (pt) 2021-05-18

Family

ID=41131685

Family Applications (2)

Application Number Title Priority Date Filing Date
BRPI0906320-0A BRPI0906320B1 (pt) 2008-07-11 2009-07-01 Calculadora de contorno de distorção de tempo, codificador de sinal de áudio, representação de sinal de áudio codificado e seus métodos.
BRPI0906300-5A BRPI0906300B1 (pt) 2008-07-11 2009-07-01 Decodificador de sinal de áudio, provedor de dados de contorno de distorção de tempo e método

Family Applications After (1)

Application Number Title Priority Date Filing Date
BRPI0906300-5A BRPI0906300B1 (pt) 2008-07-11 2009-07-01 Decodificador de sinal de áudio, provedor de dados de contorno de distorção de tempo e método

Country Status (17)

Country Link
US (3) US9299363B2 (pt)
EP (3) EP2257945B1 (pt)
JP (4) JP5323180B2 (pt)
KR (3) KR101205644B1 (pt)
CN (3) CN102007537B (pt)
AR (3) AR072739A1 (pt)
AT (2) ATE532176T1 (pt)
AU (3) AU2009267485B2 (pt)
BR (2) BRPI0906320B1 (pt)
CA (3) CA2718859C (pt)
ES (3) ES2376849T3 (pt)
MX (3) MX2010010747A (pt)
MY (1) MY154452A (pt)
PL (3) PL2257944T3 (pt)
RU (3) RU2509381C2 (pt)
TW (3) TWI459374B (pt)
WO (3) WO2010003582A1 (pt)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720677B2 (en) * 2005-11-03 2010-05-18 Coding Technologies Ab Time warped modified transform coding of audio signals
EP2107556A1 (en) * 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
RU2621965C2 (ru) 2008-07-11 2017-06-08 Фраунхофер-Гезелльшафт цур Фёрдерунг дер ангевандтен Форшунг Е.Ф. Передатчик сигнала активации с деформацией по времени, кодер звукового сигнала, способ преобразования сигнала активации с деформацией по времени, способ кодирования звукового сигнала и компьютерные программы
MY154452A (en) 2008-07-11 2015-06-15 Fraunhofer Ges Forschung An apparatus and a method for decoding an encoded audio signal
ES2441069T3 (es) * 2009-10-08 2014-01-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador multimodo para señal de audio, codificador multimodo para señal de audio, procedimiento y programa de computación que usan un modelado de ruido en base a linealidad-predicción-codificación
ES2458354T3 (es) * 2010-03-10 2014-05-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador de señales de audio, codificador de señales de audio, métodos y programa de ordenador que utiliza tasa de muestreo dependiente de la codificación del contorno de distorsión en el tiempo
EP2372704A1 (en) * 2010-03-11 2011-10-05 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Signal processor and method for processing a signal
SG184230A1 (en) * 2010-03-26 2012-11-29 Agency Science Tech & Res Methods and devices for providing an encoded digital signal
KR20130111611A (ko) * 2011-01-25 2013-10-10 니뽄 덴신 덴와 가부시키가이샤 부호화 방법, 부호화 장치, 주기성 특징량 결정 방법, 주기성 특징량 결정 장치, 프로그램, 기록 매체
TWI479478B (zh) 2011-02-14 2015-04-01 弗勞恩霍夫爾協會 用以使用對齊的預看部分將音訊信號解碼的裝置與方法
TWI488176B (zh) 2011-02-14 2015-06-11 Fraunhofer Ges Forschung 音訊信號音軌脈衝位置之編碼與解碼技術
TWI564882B (zh) 2011-02-14 2017-01-01 弗勞恩霍夫爾協會 利用重疊變換之資訊信號表示技術(一)
WO2012110448A1 (en) 2011-02-14 2012-08-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for coding a portion of an audio signal using a transient detection and a quality result
KR101613673B1 (ko) 2011-02-14 2016-04-29 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 불활성 위상 동안에 잡음 합성을 사용하는 오디오 코덱
BR112013020324B8 (pt) 2011-02-14 2022-02-08 Fraunhofer Ges Forschung Aparelho e método para supressão de erro em fala unificada de baixo atraso e codificação de áudio
KR101699898B1 (ko) * 2011-02-14 2017-01-25 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 스펙트럼 영역에서 디코딩된 오디오 신호를 처리하기 위한 방법 및 장치
MY165853A (en) 2011-02-14 2018-05-18 Fraunhofer Ges Forschung Linear prediction based coding scheme using spectral domain noise shaping
EP2676267B1 (en) 2011-02-14 2017-07-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoding and decoding of pulse positions of tracks of an audio signal
SG194199A1 (en) 2011-03-18 2013-12-30 Fraunhofer Ges Forschung Frame element positioning in frames of a bitstream representing audio content
TWI450266B (zh) * 2011-04-19 2014-08-21 Hon Hai Prec Ind Co Ltd 電子裝置及音頻資料的解碼方法
US9967600B2 (en) * 2011-05-26 2018-05-08 Nbcuniversal Media, Llc Multi-channel digital content watermark system and method
ES2549953T3 (es) * 2012-08-27 2015-11-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para la reproducción de una señal de audio, aparato y método para la generación de una señal de audio codificada, programa de ordenador y señal de audio codificada
CN102855884B (zh) * 2012-09-11 2014-08-13 中国人民解放军理工大学 基于短时连续非负矩阵分解的语音时长调整方法
CN105976824B (zh) 2012-12-06 2021-06-08 华为技术有限公司 信号解码的方法和设备
WO2014096236A2 (en) * 2012-12-19 2014-06-26 Dolby International Ab Signal adaptive fir/iir predictors for minimizing entropy
RU2638734C2 (ru) 2013-10-18 2017-12-15 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Кодирование спектральных коэффициентов спектра аудиосигнала
FR3015754A1 (fr) * 2013-12-20 2015-06-26 Orange Re-echantillonnage d'un signal audio cadence a une frequence d'echantillonnage variable selon la trame
EP2980791A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions
US10553230B2 (en) * 2015-11-09 2020-02-04 Sony Corporation Decoding apparatus, decoding method, and program
US10074373B2 (en) * 2015-12-21 2018-09-11 Qualcomm Incorporated Channel adjustment for inter-frame temporal shift variations
RU2704733C1 (ru) * 2016-01-22 2019-10-30 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Устройство и способ кодирования или декодирования многоканального сигнала с использованием параметра широкополосного выравнивания и множества параметров узкополосного выравнивания
CN107749304B (zh) * 2017-09-07 2021-04-06 电信科学技术研究院 有限冲激响应滤波器系数矢量的可持续更新方法及装置
CN114424282B (zh) * 2019-09-03 2026-03-24 杜比实验室特许公司 低时延低频率效应编译码器
TWI752551B (zh) * 2020-07-13 2022-01-11 國立屏東大學 迅吃偵測方法、迅吃偵測裝置與電腦程式產品

Family Cites Families (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5054075A (en) 1989-09-05 1991-10-01 Motorola, Inc. Subband decoding method and apparatus
JP3076859B2 (ja) * 1992-04-20 2000-08-14 三菱電機株式会社 ディジタルオーディオ信号の信号処理装置
US5408580A (en) 1992-09-21 1995-04-18 Aware, Inc. Audio compression system employing multi-rate signal analysis
JPH0784597A (ja) * 1993-09-20 1995-03-31 Fujitsu Ltd 音声符号化装置および音声復号化装置
US5717823A (en) * 1994-04-14 1998-02-10 Lucent Technologies Inc. Speech-rate modification for linear-prediction based analysis-by-synthesis speech coders
FI105001B (fi) * 1995-06-30 2000-05-15 Nokia Mobile Phones Ltd Menetelmä odotusajan selvittämiseksi puhedekooderissa epäjatkuvassa lähetyksessä ja puhedekooderi sekä lähetin-vastaanotin
US5704003A (en) 1995-09-19 1997-12-30 Lucent Technologies Inc. RCELP coder
JP3707116B2 (ja) 1995-10-26 2005-10-19 ソニー株式会社 音声復号化方法及び装置
US5659622A (en) 1995-11-13 1997-08-19 Motorola, Inc. Method and apparatus for suppressing noise in a communication system
US5848391A (en) 1996-07-11 1998-12-08 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Method subband of coding and decoding audio signals using variable length windows
US6134518A (en) 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
KR100261253B1 (ko) * 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 부호화/복호화 방법및 장치
US6070137A (en) 1998-01-07 2000-05-30 Ericsson Inc. Integrated frequency-domain voice coding using an adaptive spectral enhancement filter
DE69926821T2 (de) 1998-01-22 2007-12-06 Deutsche Telekom Ag Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen
US6115689A (en) 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
US6453285B1 (en) * 1998-08-21 2002-09-17 Polycom, Inc. Speech activity detector for use in noise reduction system, and methods therefor
US6330533B2 (en) 1998-08-24 2001-12-11 Conexant Systems, Inc. Speech encoder adaptively applying pitch preprocessing with warping of target signal
US6449590B1 (en) * 1998-08-24 2002-09-10 Conexant Systems, Inc. Speech encoder using warping in long term preprocessing
US7047185B1 (en) * 1998-09-15 2006-05-16 Skyworks Solutions, Inc. Method and apparatus for dynamically switching between speech coders of a mobile unit as a function of received signal quality
US6424938B1 (en) * 1998-11-23 2002-07-23 Telefonaktiebolaget L M Ericsson Complex signal activity detection for improved speech/noise classification of an audio signal
US6691084B2 (en) 1998-12-21 2004-02-10 Qualcomm Incorporated Multiple mode variable rate speech coding
US6223151B1 (en) 1999-02-10 2001-04-24 Telefon Aktie Bolaget Lm Ericsson Method and apparatus for pre-processing speech signals prior to coding by transform-based speech coders
DE19910833C1 (de) 1999-03-11 2000-05-31 Mayer Textilmaschf Kurzketten-Schärmaschine
EP1099215B1 (en) * 1999-05-26 2005-02-23 Koninklijke Philips Electronics N.V. Audio signal transmission system
US6782360B1 (en) 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US6604070B1 (en) * 1999-09-22 2003-08-05 Conexant Systems, Inc. System of encoding and decoding speech signals
US6978236B1 (en) * 1999-10-01 2005-12-20 Coding Technologies Ab Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching
US6366880B1 (en) 1999-11-30 2002-04-02 Motorola, Inc. Method and apparatus for suppressing acoustic background noise in a communication system by equaliztion of pre-and post-comb-filtered subband spectral energies
JP2001255882A (ja) * 2000-03-09 2001-09-21 Sony Corp 音声信号処理装置及びその信号処理方法
JP2002149200A (ja) 2000-08-31 2002-05-24 Matsushita Electric Ind Co Ltd 音声処理装置及び音声処理方法
US6850884B2 (en) * 2000-09-15 2005-02-01 Mindspeed Technologies, Inc. Selection of coding parameters based on spectral content of a speech signal
EP1340317A1 (en) * 2000-11-03 2003-09-03 Koninklijke Philips Electronics N.V. Parametric coding of audio signals
US6925435B1 (en) 2000-11-27 2005-08-02 Mindspeed Technologies, Inc. Method and apparatus for improved noise reduction in a speech encoder
SE0004818D0 (sv) 2000-12-22 2000-12-22 Coding Technologies Sweden Ab Enhancing source coding systems by adaptive transposition
ATE338333T1 (de) 2001-04-05 2006-09-15 Koninkl Philips Electronics Nv Zeitskalenmodifikation von signalen mit spezifischem verfahren je nach ermitteltem signaltyp
FI110729B (fi) 2001-04-11 2003-03-14 Nokia Corp Menetelmä pakatun audiosignaalin purkamiseksi
DK1386312T3 (da) 2001-05-10 2008-06-09 Dolby Lab Licensing Corp Forbedring af transient ydeevne af audio kodningssystemer med lav bithastighed ved reduktion af forudgående stöj
DE20108778U1 (de) 2001-05-25 2001-08-02 Mannesmann VDO AG, 60388 Frankfurt Gehäuse für ein in einem Fahrzeug verwendbares Gerät zur automatischen Ermittlung von Straßenbenutzungsgebühren
US6879955B2 (en) 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
EP1278185A3 (en) 2001-07-13 2005-02-09 Alcatel Method for improving noise reduction in speech transmission
US6963842B2 (en) 2001-09-05 2005-11-08 Creative Technology Ltd. Efficient system and method for converting between different transform-domain signal representations
EP1446796A1 (en) * 2001-10-26 2004-08-18 Koninklijke Philips Electronics N.V. Tracking of sinusoidal parameters in an audio coder
CA2365203A1 (en) * 2001-12-14 2003-06-14 Voiceage Corporation A signal modification method for efficient coding of speech signals
JP2003316392A (ja) * 2002-04-22 2003-11-07 Mitsubishi Electric Corp オーディオ信号の復号化及び符号化装置、復号化装置並びに符号化装置
US7457757B1 (en) 2002-05-30 2008-11-25 Plantronics, Inc. Intelligibility control for speech communications systems
US7447631B2 (en) 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
TWI288915B (en) 2002-06-17 2007-10-21 Dolby Lab Licensing Corp Improved audio coding system using characteristics of a decoded signal to adapt synthesized spectral components
US7043423B2 (en) 2002-07-16 2006-05-09 Dolby Laboratories Licensing Corporation Low bit-rate audio coding systems and methods that use expanding quantizers with arithmetic coding
CN1703736A (zh) 2002-10-11 2005-11-30 诺基亚有限公司 用于源控制可变比特率宽带语音编码的方法和装置
US7379866B2 (en) * 2003-03-15 2008-05-27 Mindspeed Technologies, Inc. Simple noise suppression model
JP4629353B2 (ja) * 2003-04-17 2011-02-09 インベンテイオ・アクテイエンゲゼルシヤフト エスカレータまたは動く歩道のための移動手摺り駆動装置
CN1820306B (zh) 2003-05-01 2010-05-05 诺基亚有限公司 可变比特率宽带语音编码中增益量化的方法和装置
US7363221B2 (en) 2003-08-19 2008-04-22 Microsoft Corporation Method of noise reduction using instantaneous signal-to-noise ratio as the principal quantity for optimal estimation
KR100604897B1 (ko) 2004-09-07 2006-07-28 삼성전자주식회사 하드 디스크 드라이브 조립체, 하드 디스크 드라이브의장착 구조 및 이를 채용한 휴대폰
KR100640893B1 (ko) 2004-09-07 2006-11-02 엘지전자 주식회사 음성 인식용 베이스밴드 모뎀 및 이동통신용 단말기
WO2006079813A1 (en) 2005-01-27 2006-08-03 Synchro Arts Limited Methods and apparatus for use in sound modification
CN101171626B (zh) * 2005-03-11 2012-03-21 高通股份有限公司 通过修改残余对声码器内的帧进行时间扭曲
US8155965B2 (en) 2005-03-11 2012-04-10 Qualcomm Incorporated Time warping frames inside the vocoder by modifying the residual
US8260611B2 (en) 2005-04-01 2012-09-04 Qualcomm Incorporated Systems, methods, and apparatus for highband excitation generation
JP4550652B2 (ja) * 2005-04-14 2010-09-22 株式会社東芝 音響信号処理装置、音響信号処理プログラム及び音響信号処理方法
US7885809B2 (en) 2005-04-20 2011-02-08 Ntt Docomo, Inc. Quantization of speech and audio coding parameters using partial information on atypical subsequences
PT1875463T (pt) 2005-04-22 2019-01-24 Qualcomm Inc Sistemas, métodos e aparelho para nivelamento de fator de ganho
JP4450324B2 (ja) 2005-08-15 2010-04-14 日立オートモティブシステムズ株式会社 内燃機関の始動制御装置
JP2007084597A (ja) 2005-09-20 2007-04-05 Fuji Shikiso Kk 表面処理カーボンブラック組成物およびその製造方法
US7720677B2 (en) * 2005-11-03 2010-05-18 Coding Technologies Ab Time warped modified transform coding of audio signals
US7366658B2 (en) 2005-12-09 2008-04-29 Texas Instruments Incorporated Noise pre-processor for enhanced variable rate speech codec
US7991494B2 (en) * 2006-02-23 2011-08-02 Lg Electronics Inc. Method and apparatus for processing an audio signal
TWI294107B (en) 2006-04-28 2008-03-01 Univ Nat Kaohsiung 1St Univ Sc A pronunciation-scored method for the application of voice and image in the e-learning
US7873511B2 (en) * 2006-06-30 2011-01-18 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
US8682652B2 (en) * 2006-06-30 2014-03-25 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
MX2008016163A (es) 2006-06-30 2009-02-04 Fraunhofer Ges Forschung Codificador de audio, decodificador de audio y procesador de audio con caracteristicas de warping variable de manera dinamica.
CN100489964C (zh) * 2006-08-18 2009-05-20 广州广晟数码技术有限公司 音频解码
US8239190B2 (en) 2006-08-22 2012-08-07 Qualcomm Incorporated Time-warping frames of wideband vocoder
CN101025918B (zh) 2007-01-19 2011-06-29 清华大学 一种语音/音乐双模编解码无缝切换方法
US9653088B2 (en) * 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
EP2107556A1 (en) 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
MY154452A (en) 2008-07-11 2015-06-15 Fraunhofer Ges Forschung An apparatus and a method for decoding an encoded audio signal
RU2621965C2 (ru) 2008-07-11 2017-06-08 Фраунхофер-Гезелльшафт цур Фёрдерунг дер ангевандтен Форшунг Е.Ф. Передатчик сигнала активации с деформацией по времени, кодер звукового сигнала, способ преобразования сигнала активации с деформацией по времени, способ кодирования звукового сигнала и компьютерные программы
JP5297891B2 (ja) 2009-05-25 2013-09-25 京楽産業.株式会社 遊技機
US8670990B2 (en) 2009-08-03 2014-03-11 Broadcom Corporation Dynamic time scale modification for reduced bit rate audio coding
CN102257564B (zh) * 2009-10-21 2013-07-10 松下电器产业株式会社 音频编码装置、解码装置、方法、电路及程序

Also Published As

Publication number Publication date
WO2010003581A1 (en) 2010-01-14
JP5323180B2 (ja) 2013-10-23
ATE532176T1 (de) 2011-11-15
EP2257944A1 (en) 2010-12-08
EP2257945B1 (en) 2011-11-02
US9025777B2 (en) 2015-05-05
AU2009267484A1 (en) 2010-01-14
CA2718857A1 (en) 2010-01-14
KR20100125372A (ko) 2010-11-30
WO2010003583A1 (en) 2010-01-14
TWI459374B (zh) 2014-11-01
RU2527760C2 (ru) 2014-09-10
CA2718859A1 (en) 2010-01-14
AU2009267484B2 (en) 2011-09-01
KR20100134627A (ko) 2010-12-23
AR072498A1 (es) 2010-09-01
MX2010010748A (es) 2010-11-30
TW201009810A (en) 2010-03-01
US20110158415A1 (en) 2011-06-30
CA2718859C (en) 2015-09-29
PL2260485T3 (pl) 2013-08-30
HK1151620A1 (en) 2012-02-03
US9043216B2 (en) 2015-05-26
JP2011521305A (ja) 2011-07-21
MX2010010749A (es) 2010-11-30
WO2010003582A1 (en) 2010-01-14
CA2718740A1 (en) 2010-01-14
ATE532177T1 (de) 2011-11-15
EP2260485A1 (en) 2010-12-15
CA2718857C (en) 2014-09-09
RU2010139021A (ru) 2012-03-27
EP2257945A1 (en) 2010-12-08
ES2376974T3 (es) 2012-03-21
JP6041815B2 (ja) 2016-12-14
RU2010139023A (ru) 2012-03-27
AR072500A1 (es) 2010-09-01
EP2257944B1 (en) 2011-11-02
AU2009267486B2 (en) 2011-09-15
EP2260485B1 (en) 2013-04-03
KR101205644B1 (ko) 2012-11-27
ES2404132T3 (es) 2013-05-24
RU2509381C2 (ru) 2014-03-10
TW201009809A (en) 2010-03-01
US9299363B2 (en) 2016-03-29
KR101205615B1 (ko) 2012-11-27
TWI451402B (zh) 2014-09-01
CN102007536A (zh) 2011-04-06
JP2011521304A (ja) 2011-07-21
CN102007537B (zh) 2013-08-28
RU2486484C2 (ru) 2013-06-27
BRPI0906319A2 (pt) 2023-03-14
PL2257944T3 (pl) 2012-04-30
CN102007531A (zh) 2011-04-06
RU2010139022A (ru) 2012-03-27
US20110161088A1 (en) 2011-06-30
JP5323179B2 (ja) 2013-10-23
AU2009267486A1 (en) 2010-01-14
ES2376849T3 (es) 2012-03-20
HK1151619A1 (en) 2012-02-03
JP2014130359A (ja) 2014-07-10
MX2010010747A (es) 2010-11-30
AU2009267485B2 (en) 2011-10-06
JP5551686B2 (ja) 2014-07-16
BRPI0906300B1 (pt) 2021-11-09
US20110106542A1 (en) 2011-05-05
BRPI0906300A2 (pt) 2020-09-24
CA2718740C (en) 2015-10-27
AR072739A1 (es) 2010-09-15
TW201009811A (en) 2010-03-01
BRPI0906320A2 (pt) 2020-01-14
KR101205593B1 (ko) 2012-11-27
KR20100134625A (ko) 2010-12-23
TWI453732B (zh) 2014-09-21
CN102007537A (zh) 2011-04-06
HK1151883A1 (en) 2012-02-10
CN102007536B (zh) 2012-09-05
JP2011521303A (ja) 2011-07-21
PL2257945T3 (pl) 2012-04-30
MY154452A (en) 2015-06-15
AU2009267485A1 (en) 2010-01-14
CN102007531B (zh) 2013-08-21

Similar Documents

Publication Publication Date Title
BRPI0906320B1 (pt) Calculadora de contorno de distorção de tempo, codificador de sinal de áudio, representação de sinal de áudio codificado e seus métodos.
BR112012022741B1 (pt) Decodificador de sinal de áudio, codificador de sinal de áudio e métodos utilizando uma codificação de contorno da deformação no tempo dependente da taxa de amostragem
BRPI0906319B1 (pt) Decodificador de sinal de áudio, codificador de sinal de áudio, representação de sinal de áudio multi-canal codificado e métodos
HK1151619B (en) Time warp contour calculator, audio signal encoder, encoded audio signal representation, methods and computer program
HK1151620B (en) Audio signal decoder, time warp contour data provider, method and computer program
HK1151883B (en) Audio signal decoder, audio signal encoder, encoded multi-channel audio signal representation, methods and computer program

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 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 01/07/2009, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF