BRPI0412166B1 - aparato e método para a conversão em uma representação transformada ou para a conversão inversa da representação transformada - Google Patents
aparato e método para a conversão em uma representação transformada ou para a conversão inversa da representação transformada Download PDFInfo
- Publication number
- BRPI0412166B1 BRPI0412166B1 BRPI0412166A BRPI0412166A BRPI0412166B1 BR PI0412166 B1 BRPI0412166 B1 BR PI0412166B1 BR PI0412166 A BRPI0412166 A BR PI0412166A BR PI0412166 A BRPI0412166 A BR PI0412166A BR PI0412166 B1 BRPI0412166 B1 BR PI0412166B1
- Authority
- BR
- Brazil
- Prior art keywords
- block
- values
- transformed
- value
- discrete
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000006243 chemical reaction Methods 0.000 title claims description 41
- 230000009466 transformation Effects 0.000 claims abstract description 197
- 239000011159 matrix material Substances 0.000 claims description 43
- 230000005236 sound signal Effects 0.000 claims description 18
- 238000003491 array Methods 0.000 claims description 11
- 238000011426 transformation method Methods 0.000 claims description 3
- 241000269627 Amphiuma means Species 0.000 claims 1
- 238000000926 separation method Methods 0.000 abstract description 19
- 230000008569 process Effects 0.000 abstract description 5
- 238000009825 accumulation Methods 0.000 abstract description 2
- 230000003595 spectral effect Effects 0.000 description 38
- 230000006870 function Effects 0.000 description 37
- 238000004422 calculation algorithm Methods 0.000 description 28
- 238000000844 transformation Methods 0.000 description 21
- 230000002441 reversible effect Effects 0.000 description 14
- 238000007667 floating Methods 0.000 description 10
- 238000013139 quantization Methods 0.000 description 10
- 238000007792 addition Methods 0.000 description 9
- 238000013459 approach Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 241000255777 Lepidoptera Species 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000002349 favourable effect Effects 0.000 description 3
- 238000001228 spectrum Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- CVXBEEMKQHEXEN-UHFFFAOYSA-N carbaryl Chemical compound C1=CC=C2C(OC(=O)NC)=CC=CC2=C1 CVXBEEMKQHEXEN-UHFFFAOYSA-N 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004134 energy conservation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/147—Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/0212—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Discrete Mathematics (AREA)
- Algebra (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Complex Calculations (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Controls And Circuits For Display Device (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Radar Systems Or Details Thereof (AREA)
- Image Processing (AREA)
Abstract
"aparato e método para a conversão em uma representação transformada ou para a conversão inversa da representação transformada". para conversão de um primeiro e um segundo blocos de valores discretos em uma representação transformada, o primeiro bloco é transformado (102) de acordo com uma primeira regra de transformação e em seguida arredondado (104). em seguida, os valores transformados arredondados são somados com o segundo bloco de valores discretos originais (106), para então processar (108) a soma resultante de acordo com uma segunda regra de transformação. os valores de saída da transformação através da segunda regra de transformação são novamente arredondados (110) e em seguida subtraídos (112) dos valores discretos originais do primeiro bloco de valores discretos para se obter um bloco de valores de saída inteiros da representação transformada. através desse esquema de elevação multidimensional é obtida uma transformação inteira sem perdas, a qual pode ser revertida através da aplicação da mesma regra de transformação, mas com um sinal diferente na soma e na subtração, respectivamente, de modo que se possa obter também uma transformação inteira inversa. comparada com uma separação da transformação em rotações, por um lado, obtém-se uma complexidade de computação significativamente reduzida e, por outro lado, evita-se um acúmulo de erros de aproximação.
Description
"APARATO E MÉTODO PARA A CONVERSÃO EM UMA REPRESENTAÇÃO TRANSFORMADA OU PARA A CONVERSÃO INVERSA DA REPRESENTAÇÃO TRANSFORMADA" Descrição [0001] A presente invenção refere-se a algoritmos de compressão para valores discretos tendo informações de áudio e/ou imagem e, especialmente, a algoritmos de transformação que são especiais para uso em codificadores baseados em transformação, o que significa que realizam quantizaçâo/codificação não dos sinais originais de áudio e/ou imagem, mas compreendem a transformação em uma faixa espectral antes da quantízação/codífícaçao.
[0002] Os métodos modernos de codificação de áudio, tais como o MPEG Camada 3 [MP3) ou MPEG AAC [Advanced Audio Coding - Codificação Avançada de Áudio], usam transformações, tais como a assim, chamada Transformação Discreta de Co-Seno Modificada (MDCT - Modified Discrete Cosine Transformation) para obter uma representação de freqüência em blocos de um sinal de áudio. Normalmente, um codificador de áudio desses recebe um fluxo de amostras de áudio discretas no tempo, O fluxo de amostras de áudio é janelado para se obter um bloco de janela de, por exemplo·, 1024 ou 2048 amostras de áudio· janeladas. Para o processo de janelamento, são usadas diferentes funções de janelas, tais como a janela, de seno, etc.
[0003] As amostras de áudio discretas no tempo janeladas são em seguida convertidas em uma representação espectral através de um banco de filtros. Em princípio, uma transformação de Fourier ou, por razões específicas, uma variação da transformação de Fourier, tais como a FFT ou, como explicado acima, a MDCT, podem ser usadas, 0 bloco de valores espectrais de áudio na saída do banco de filtros pode em seguida ser ainda processado, caso necessário. Nos codificadores de áudio acima mencionados, a quantização dos valores espectrais do áudio se segue, os níveis de quantização sendo tipicamente escolhidos tal que o ruído de quantização introduzido por ela fique abaixo do limiar de mascaramento psicoacústico, isto é, seja "removido por mascaramento", A quantização é uma codificação com perdas. Para se obter uma redução adicional da quantidade de dados, os valores espectrais quantizados são em seguida codificados por entropia, por exemplo, através da codificação de Huffman, Através do acréscimo de informações laterais, tais como fatores de escala, etc., um multipiexador de fluxo de bits forma um fluxo de bits a partir dos valores espectrais quantizados codificados por entropia, os quais podem ser armazenados ou transmitidos.
[0004] No decodificador de áudio, o fluxo de bits é dividido em valores espectrais quantizados codificados e informações laterais através de um demultiplexador de fluxo de bits. Os valores espectrais quantizados codificados por entropia são primeiro decodificados por entropia para se obter os valores espectrais quantizados. Os valores espectrais quantizados são em seguida inversamente quantizados para se obter os valores espectrais decodificados, os quais possuem ruído de quantização, o qual está abaixo do limiar de mascaramento psicoacústico e, assim, será inaudível. Esses valores espectrais serão em seguida convertidos em uma representação de tempo por meio de um banco· de filtros de síntese para se obter amostras de áudio decodificado discretas no tempo·. Um algoritmo de transformação inverso ao algoritmo de transformação tem de ser usado no banco de filtros de síntese. Além disso, o janelamento tem de ser cancelado após a transformação inversa de tempo· da frequência.
[0005] Para se obter uma boa seletividade da frequência, os codificadores de áudio modernos tipicamente usam a sobreposição de blocos. Um caso· desses é ilustrado na Fig. 12a. Primeiro, por exemplo, 2048 amostras de áudio discretas no tempo são tomadas e janeladas através de um meio 402. O meio de representação em janelas 402 possui um comprimento de janela de 2N amostras e fornece um bloco de 2N amostras janeladas no lado de saída. De modo a se obter a superposição- de janelas, um segundo bloco de 2N amostras é formado através de um meio 404, o qual é ilustrado na Fig. 12a, meramente por razões de clareza, separadamente do meio 402. No entanto, as 2048 amostras fornecidas ao meio· 404 são não as amostras de áudio discretas no· tempo ímediatamente adjacentes à primeira janela, mas sim compreendem a segunda metade das amostras janeladas pelo meio 402 e compreendem adicionalmente meramente 1024 "novas" amostras. A sobreposição é simbolicamente ilustrada pelo meio 406 na Fig. 12a, o qual efetua um grau de sobreposição de 50%. Tanto a salda das 2N amostras janeladas através do meio 402 como· a saída das 2N amostras janeladas pelo meio 404 são então sujeitas ao algoritmo MDCT através dos meios 408 e 410, respectivamente. De acordo cora o algoritmo MDCT conhecido, o meio· 408 fornece N valores espectrais para a primeira janela, enquanto o meio 410 também fornece N valores espectrais, mas para a segunda janela, onde existe uma sobreposição de 50% entre a primeira e a segunda janelas.
[0006] Conforme ilustrado na Fig. 12b, no decodificador os N valores espectrais da primeira janela são fornecidos ao meio 412, o qual realiza uma transformação do co-seno discreta modificada inversa, 0 mesmo se aplica aos N valores espectrais da segunda janela. Esses são fornecidos ao meio 414, o qual também realiza uma transformação do co-seno discreta modificada inversa. Tanto o meio 41Ξ como o meio 414 fornecera 2N amostras para a primeira janela e 214 amostras para a segunda janela, respectivamente.
[0007] Wo meio 416, que é designado como TDAC (Time Doraain Alíasíng Cancelation - Cancelamento por Suavização no Domínio do Tempo) na Fig. 12b, o fato de que as duas janelas estão sobrepostas é considerado. Partícularmente, uma amostra yi da segunda metade da primeira janela, o que quer dizer que tem um índice N+k, é somada com uma amostra y2 da primeira metade da segunda janela, o que quer dizer que tem ura índice k, de modo que N amostras decodificadas no tempo são produzidas no lado de saída, o que quer dizer no decodificador.
[0008] Deve-se notar que através da função do meio 416, que também é chamada de função de adição, o janelamento realizado no codificador ilustrado esquematicamente na Fig. 12a é levado em consideração· automaticamente, de modo que nenhum "janelamento inverso" tem de ser realizado no decodifícador ilustrado na Fig. 12b.
[0009] Quando a função de janela implementada pelos meios 402 ou 404 é chamada de w<k), onde o índice k representa o indíce do tempo, a condição tem de ser cumprida tal que o peso da janela w(k) ao quadrado somado ao peso da janela w{N+k} ao quadrado resulte em 1, onde k varia de 0 a N-l. Caso seja usada uma janela de seno, os pesos da janela da qual se segue a primeira meia-onda da função seno, essa condição é sempre preenchida, visto que o quadrado do seno e o· quadrado do co-seno somados, para todos os ângulos, resulta no valor 1.
[00010] üma desvantagem do método de janelamento com função MDCT subseqüente, que é descrita, na Fig. 12a, é que o janelamento é obtido pela multiplicação de um valor de amostra discreto no tempo, ao se considerar uma janela de seno-, com ponto flutuante, visto que o seno de um ângulo entre 0 e 180 graus não resulta em um inteiro, exceto no ângulo de 90 graus. Mesmo quando amostras discretas inteiras no tempo são janeladas, resultam números era ponto flutuante após o· janelamento.
[00011] Dessa forma, mesmo quando nenhum codificador psicoacústico é usado, o que significa que uma codificação sem perdas precisa ser obtida, é necessária quantízação na saída dos meios 408 e 410, respectivamente, de modo a ser possível a realização de uma codificação por entropia razoavelmente gerenciãvel.
[00012] Geralmente, as transformações inteiras atualmente conhecidas para codificação sem perda de áudio é/ou video são obtidas através da separação das transformações alí usadas em rotações de Givens e pela aplicação do esquema de elevação a cada rotação de Givens. Dessa forma, um erro de arredondamento é introduzido em cada etapa. Para estágios subseqüentes das rotações de Givens, o erro de arredondamento continua a se acumular, 0 erro de aproximação resultante torna-se especialmente problemático para abordagens de codificador de áudio sem perdas, especialmente quando são usadas transformações longas, as quais fornecem, por exemplo, 1.024 valores espectrais, tal como ocorre, por exemplo, no caso da MDCT (Modified Discrete Cosine Transformation - Transformação do Co-Seno Discreta Modificada) conhecida com sobreposição e adição. Particularmente na faixa de alta frequência, onde de qualquer forma o sinal de áudio tipicamente tem uma pequena quantidade de energia, o erro de aproximação pode rapidamente se tornar maior do que o próprio sinal, de modo que essa abordagem é problemática com relação à codificação sem perdas e especialmente com relação à eficiência da codificação obtida através dela.
[00013] Com relação à codificação de áudio, transformações inteiras, o que quer dizer algoritmos de transformação que geram valores de saida inteiros, são particularmente baseados no conhecido DCT-IV, que não leva em consideração nenhum componente constante, enquanto· transformações inteiras para aplicações de imagem são baseadas, em vez disso, no DCT-II, o qual particularmente contém as disposições para o componente constante. Essas transformações inteiras sâo descritas, por exemplo, em Y. Zeng, G. Bi e Z. Lin, "Integer sinusoidal transforms based on líftíng factorization", em Proc. ICASSP'01, maio de 2001, pp. 1.181 - 1.184, K. Komatsu e K. Sezakí, "Reversive Discrete Cosine Transform", em Proc. ICASSP, 1998. Vol. 3, pp. 1.769 -1.772, P. Hao e Q. Shi, "Matrix factorizations for reversible integer mapping", IEEE Trans. Signal Processing, Signa1 Processing, Vol. 49, pp. 2.314 - 2.324, e J. Wang, J. Sun e S. Yu, "1-d and 2-d transforms from integers to integers", em Proc. ICASSP'03, Hong Kong, abril de 2003.
[00014] Como foi explicado acima, as transformações inteiras lá descritas se baseiam na separação da transformação em rotações de Givens e na aplicação do esquema de elevação- conhecido às rotações de Givens, o que envolve o problema da acumulação de erros de arredondamento. Isso se deve particularmente ao fato de que o arredondamento tem de ser realizado várias vezes dentro de uma transformação, o que significa após cada etapa de elevação, de modo que especialmente em transformações longas, as quais envolvem por consequência muitas etapas de elevação, o arredondamento tem de ser realizado muito frequentemente - Como foi explicado, isso resulta em um erro acumulado e particularmente em um processamento relativamente dispendioso, visto que o arredondamento é realizado após cada uma das etapas de elevação para realizar a próxima etapa de elevação.
[00015] 0 objeto da presente invenção é prover um conceito mais eficiente e exato para a conversão de valores discretos em uma representação· transformada e para uma conversão inversa correspondente da representação transformada.
[00016] Esse objeto é alcançado através de um aparato de conversão de acordo com a reivindicação 1, ura método de conversão de acordo com a reivindicação 17, um aparato para a conversão inversa de acordo com a reivindicação 19, ura método para a conversão inversa de acordo· com a reivindicação 21 e um programa de computador de acordo com a reivindicação 24, [00017] Um objeto adicional da presente invenção é prover um aparato de transformação para frente assim como um aparato de transformação para trás, os quais compreendam, o conceito inventivo para conversão e o· conceito inventivo para conversão inversa, respectivamente.
[00018] Esse objeto é alcançado através do aparato de transformação pârá frente de acordo· COm a reivindicação 16, um método para transformação para frente de acordo com a reivindicação 18, um aparato de transformação para trás de acordo· com a reivindicação 22 ou um método para transformação para trás de acordo com a reivindicação 23 ou um programa de computador de acordo cora a reivindicação 24.
[00019] A presente invenção se baseia no conhecimento de que através da extensão do· esquema de elevação unidimensional para um esquema de elevação multidimensional, assim como através da execução em cascata de pelo menos duas dessas etapas de elevação, por um lado, o erro de arredondamento é reduzido e, por outro lado, a eficiência da computação é aumentada. Por conseguinte, de acordo com a invenção, pelo menos dois blocos de valores compreendendo informações de áudio e/ou imagem são necessários, os quais são, cada um deles, submetidos a um algoritmo de transformação arbitrário. De acordo com a invenção, o arredondamento é realizado apenas após a realização do algoritmo completo de transformação. Isso significa que primeiro, por exemplo, os valores de resultado de saída, tais como os valores espectrais, da 1- transformação são arredondados e os resultados de saída da 2- transformação são arredondados, respectivamente. Assim, não é necessário um arredondamento dentro da transformação'. Assim, qualquer regra de transformação arbitrária existente e particularmente qualquer já testada, na forma de, por exemplo, um código de programa, o qual existe e esteja livremente disponível, pode ser usado como a 1- e a 2- regras de transformação, sem ter de separar a própria transformação em rotações individuais como na técnica anterior, através da interferência com a transformação efetiva.
[00020] De acordo com a invenção, o segundo bloco é usado- como portador para a representação transformada do primeiro bloco, através da soma do- segundo bloco com a representação transformada do primeiro bloco. Além disso, de acordo com a invenção, o primeiro bloco é usado como portador para uma representação transformada do segundo bloco através da subtração da representação transformada do segundo bloco (a qual jã contém os valores espectrais do primeiro bloco) a partir do primeiro bloco, [00021] Visto que, de acordo com a invenção, o arredondamento é realizado meramente após a 1- e a 2-transformações, respectivamente, e visto que os valores arredondados são adítivamente e subtrativamente sobrepostos, respectivamente, aos valores de portador correspondentes, pode-se obter um cancelamento· das etapas realizadas na conversão sem perda de dados na conversão inversa, de modo a gerar um algoritmo de transformação inteiro, o qual pode, por um lado, ser implementado de maneira eficiente do ponto de vista computacional e no qual, por outro lado, não ocorra nenhuma acumulação de erros de arredondamento. Isso se deve ao fato de que o arredondamento· é realizado apenas após uma 1- e 2- transformações completas, o que, por um lado, elimina a acumulação de erros de arredondamento e, por outro lado, reduz significativamente o número de etapas de arredondamento, em. comparação com. o caso em que a própria transformação é separada em rotações, em que o arredondamento é realizado após cada uma das próprias etapas de elevação, dentro do próprio algoritmo de transformação.
[00022] Uma vantagem da presente invenção é que eventuais regras de transformação não inteiras convencionais podem ser usadas, visto que o arredondamento tem de ser realização apenas após a transformação.
[00023] Além disso, a presente invenção é vantajosa, pois podem ser usados algoritmos .rápidos, cujo esforço 0 não suba de acordo com N2, mas meramente suba a N log N. Isso é especialmente significativo para sinais de áudio, visto que o valor N, que significa o comprimento da transformação, é relativamente grande em sinais de áudio·, e é cerca de 1.024 valores nos métodos de compressão de áudio conhecidos descritos acima.
[00024] Em uma configuração preferida da presente invenção, na qual é usada uma versão inteira da transformação· MDCT de ponto flutuante conhecida, a transformação DCT-IV conhecida é a regra de transformação, a qual compreende uma matriz de transformação idêntica como regra de transformação para a 1- e 2â transformações. Além disso, de modo a obter uma transformação completamente inteira, a qual corresponde à MDCT com sobreposição e adição, é preferível combinar o jánelámento da MDCT comum com a funcionalidade de cancelamento de suavização no domínio do tempo (funcionalidade TDAC) e expressá-la através de rotações de Givens, as quais podem novamente ser calculadas de uma maneira inteira por um esquema de elevação·, para se obter uma versão totalmente inteira da MDCT.
[00025] Os dois blocos de valores discretos fornecidos ao aparato de conversão· inventivo correspondem aos valores rotacíonados de Givens dos blocos janelados com sobreposição das amostras de áudio discretas no tempo ou amostras de imagem discretas ou valores residuais de imagem após uma previsão em um algoritmo de compressão de vídeo moderno·, onde o algoritmo DCT-IV é preferido como algoritmo de transformação no caso de dados de áudio. No lado· do· decodificador, novaraente, o algoritmo DCT-IV é preferido· como o· aparato de transformação freqüência-tempo, o qual é novamente seguido de ura estágio de rotação, o qual realiza um esquema de elevação inverso para recuperar os N arredondamentos introduzidos no lado do codificador, o que significa os arredondamentos na transformação de tempo-freqüência, de uma maneira sem perdas.
[00026] As configurações preferidas da presente invenção serão discutidas abaixo com referência aos desenhos de acompanhamento. Eles mostrara: [00027] Fig. 1: um diagrama em blocos de um aparato inventivo para conversão;
[00028] Fig. 2: um diagrama em blocos de um aparato inventivo para conversão inversa;
[00029] Fig. 3: um diagrama em blocos de um aparato para conversão de acordo com uma configuração preferida da presente invenção;
[00030] Fig. 4; um aparato para conversão inversa de acordo com uma configuração preferida da presente invenção;
[00031] Fig. 5: uma representação da transformação de dois blocos subsequentes de valores, conforme aplicável para a presente invenção;
[00032] Fig. 6: uma representação detalhada de uma etapa de elevação mult idimensional com um.a matriz de transformação para frente;
[00033] Fig. 7: uma representação de uma etapa de elevação inversa multidimensional com uma matriz de transformação para trás;
[00034] Fig. 8: uma representação da presente invenção· para separar um DCT-IV de comprimento N em dois DCT-IV do comprimento N/2;
[00035] Fig. 9: um diagrama em blocos de um meio preferido para o processamento de amostras de áudio discretas no tempo para a obtenção de valores inteiros a partir dos quais valores espectrais inteiros possam ser determinados;
[00036] Fig. 10; uma representação esquemática da separação· de uma MDCT e uma MDCT inversa em rotações de Givens e duas operações de DCT-IV;
[00037] Fig. 11: uma representação para ilustração da separação da MDCT com 50 por cento de sobreposição em rotações e operações de DCT-IV;
[00038] Fig. 12a: ura diagrama em blocos esquemático de um codificador conhecido com MDCT e 50 por cento de sobreposição; e [00039] Fig. 12b: um diagrama em blocos de um decodificador conhecido para a decodificaçào dos valores gerados pela Fig. 10a.
[00040] A Fig. 1 mostra um aparato inventivo para a conversão de valores discretos em uma representação· transformada com valores inteiros. Os valores discretos são fornecidos a um aparato inventivo através de uma primeira entrada 100a, assim como de uma segunda entrada 100b. O primeiro· bloco de valores discretos é inserido através da entrada 100a, enquanto um segundo bloco de valores discretos é inserido através da entrada 100b. Os valores discretos representara dados de áudio ou dados de imagem e dados de vídeo, respectivamente. Como será explicado abaixo, o primeiro bloco de valores discretos e o segundo bloco de valores discretos podem de fato compreender dois blocos de amostra de áudio sucessivos no tempo. O primeiro e o segundo blocos de valores discretos também podem compreender duas imagens e valores residuais, respectivamente, representados pelos valores discretos após uma previsão ou valores de diferença em uma codificação de diferença, etc. Como alternativa, os dois blocos de valores discretos podem, ter sido· sujeitos a pré-processarnento, tal como na implementação inteira da MDCT, onde o primeiro bloco e o segundo bloco de valores discretos foram gerados por rotações de Gívens de amostras efetivamente janeladas. 0 primeiro e o segundo blocos de valores discretos podem, assim, ser derivados dos dados originais de áudio ou de imagem através de quaisquer processamentos, tais como rotações, permutações, borboletas para mais/menos, escalonamentos, etc. Todavia, o primeiro e o segundo blocos de valores discretos contêm informações de áudio e informações de imagem, respectivamente, embora não sejam diretamente amostras de áudio· ou valores de imagem discretos.
[00041 ] O primeiro bloco de valores discretos é fornecido ao meio 102 para processamento do· primeiro bloco de valores discretos através do uso de uma 1- regra de transformação através da entrada 100a, para obter um primeiro bloco de valores transformados na saída do meio 102, como é mostrado na Fig. 1. Esse primeiro bloco de valores transformados tipicamente não será inteiro, mas compreenderá valores de ponto flutuante, visto que eles são tipicamente obtidos por alguma regra de transformação, tal como uma transformação de Fourier, uma transformação de Laplace, uma FFT, uma DCT, uma DST, uma MDCT, uma MDST ou qualquer outra transformação, tal como uma transformação do tipo wavelet com funções de base arbitrárias. 0 primeiro bloco de valores transformados é fornecido ao meio 104 para arredondamento do primeiro bloco de valores transformados no lado da saída. O meio 104 para arredondamento é conformado para realizar qualquer função de arredondamento, tal como o arredondamento por truncamento ou arredondamento para cima ou arredondamento simples, respectívamente, para ser realizado dependendo do valor de ponto flutuante.
[00042] A regra de arredondamento, que é implementada pelo meio 104, é assim responsável pelo fato de que o primeiro bloco de valores transformados arredondados novamente meramente possui valores inteiros, cuja precisão é determinada pela regra de arredondamento usada pelo meio 104» O primeiro bloco de valores transformados arredondados é fornecido ao meio 106 para soma, assim como o segundo bloco de valores discretos aplicado à segunda entrada 100b, para obter um segundo bloco de valores somados. Caso se considere o exemplo do sinal de áudio·, pode-se ver que os valores espectrais do primeiro bloco são somados aos valores transformados arredondados do primeiro· bloco de valores transformados arredondados que são somados aos valores de tempo· do segundo bloco de valores discretos pelo meio 106. Caso os valores discretos do segundo bloco estejam, por exemplo, presentes como valores de tensão, recomenda-se que o· primeiro bloco de valores transformados arredondados esteja também presente como amplitudes de tensão, o que significa valores com a unidade V. Nesse caso, não haverá problemas na soma. No entanto, os técnicos no assunto perceberão que qualquer padronização de unidade pode ser feita com o primeiro· bloco de valores transformados arredondados e o segundo bloco de valores discretos, respectivamente, em que tanto o primeiro bloco de valores transformados arredondados e o segundo bloco de valores discretos são, por exemplo, isento-s de unidades.
[00043] O segundo bloco de valores somados é fornecido a um meio 108 para processamento do segundo bloco· de valores somados através do uso de uma 2á regra de transformação para se obter um segundo bloco de valores transformados. Caso a regra de transformação usada no meio 102 seja, por exemplo, uma regra de transformação de tempo-freqüência, então a 2- regra de transformação, que é usada no bloco 108, é, por exemplo, uma regra de transformação de tempo-freqüênciâ. Essas relações também podem ser invertidas, de modo que o primeiro e segundo blocos de valores discretos sejam, por exemplo, valores espectrais, de modo que os valores de tempo sejam obtidos pelo meio 102 para processamento sob a regra de transformação, enquanto novamente os valores espectrais sejam obtidos pelo meio para processamento através da regra de transformação inversa, a qual é o meio 108. Assim, a 1- e 2- regras de transformação podem ser uma regra de transformação para frente ou uma regra de transformação para trás, onde a regra de transformação· inversa é a regra de transformação para trás e a regra de transformação para frente, respectivamente, [00044] O segundo bloco de valores transformados é fornecido a um meio 110 para arredondamento, conforme mostrado na Fig. 1, para se obter um segundo bloco de valores transformados arredondados, o qual será em seguida fornecido a um meio 112 para subtração, para subtrair o segundo bloco de valores transformados arredondados a partir do primeiro bloco de valores discretos, o qual é introduzido através da primeira entrada 108a, para se obter um bloco de valores inteiros de saída da representação transformada, o qual pode ser emitido por uma saída 114. Através do processamento do· bloco· de valores de saída inteiros da representação transformada através do uso de uma terceira regra de transformação arbitrária, a qual também tenha sido usada no meio· 102 ou difira dele, e através do subsequente arredondamento do bloco de valores de saída transformados para se obter um bloco de valores de saída transformados arredondados e através da subsequente soma do bloco de valores de saída transformados arredondados com o segundo bloco de valores somados, pode-se obter um bloco adicional de valores de saída inteiros da representação transformada, o· que fornece uma representação· transformada completa do primeiro· e segundo blocos de valores discretos com o bloco de valores de saída inteiros aplicado à saída 114.
[00045] Mas mesmo sem as últimas três etapas de processamento, arredondamento e soma, em que o bloco de valores de saída inteiros da representação transformada é aplicado à saída 114, parte de toda a representação transformada pode já ser obtida, a saber, por exemplo, a primeira metade, a qual permite um recalculo do primeiro e do segundo blocos de valores discretos, quando sujeito ao processamento inverso.
[00046] Aqui se deve observar que, dependendo da regra de transformação, a 1-, a 2- e, se necessário, a 3à regras de transformação podem ser idênticas. Esse é, por exemplo, o caso com a DCT-IV. Caso uma FFT tenha sido usada como 1- regra de transformação, a IFFT, que não é idêntica à FFT, podería ser usada como uma segunda regra de transformação (inversa).
[00047] Por motivos computacionais é preferível fornecer a regra de transformação na forma de uma matriz, a qual é então uma matriz quadrada de N x N quando o número de valores discretos do primeiro bloco é igual ao número de valores discretos dos segundo bloco, quando o número de valores discretos do primeiro bloco e o número de valores discretos do segundo bloco são ambos iguais a N.
[00048] Em uma configuração preferida da presente invenção·, os meios 104 e 110 para o arredondamento são formados para arredondar, de acordo com uma função de arredondamento que fornece resultados arredondados, a precisão· que é menos do que uma precisão de máquina inerente ao computador que executa as funcionalidades mostradas na Fig. 1. De acordo com a função de arredondamento, deve-se observar que ela mapeia um número não inteiro para o próximo inteiro mais alto ou mais baixo, meramente era uma configuração preferida. A função· de arredondamento também pode mapear para outros inteiros, tal como· o· número 17,7 para o· número 10 ou o número 20, desde que a função de arredondamento efetue uma diminuição da precisão do número a ser arredondado. No exemplo acima, o número não arredondado é um número com um digito após a virgula decimal, enquanto o número arredondado é um número sem digito após a vírgula decimal.
[00049] Embora o meio 102 para processamento através do uso da 1- regra de transformação e do meio 108 para processamento através do uso da 2- regra de transformação sejam mostrados como meios separados na Fig, 1, deve-se observar que em uma implementação especifica, meramente uma unidade de função de transformação pode estar presente, a qual, controlada por urna sequência especifica de controle, primeiro transforme o primeiro bloco de valores discretos e em seguida transforme inversamente o segundo bloco de valores somados no tempo respectivo do algoritmo. Então, a primeira e a segunda regras de transformação seriam idênticas. O mesmo se aplica aos dois meios 104, 110 para arredondamento. Eles também não têm de ser fornecidos como meios separados, mas podem ser implementados por uma unidade de função de arredondamento, a qual, novamente controlada pelo controle de sequência dependendo dos requisitos do algoritmo, primeiro arredonda o primeiro bloco de valores transformados e era seguida o segundo bloco de valores transformados.
[00050] Em uma configuração preferida da presente invenção, o primeiro bloco de valores discretos e o segundo bloco de valores discretos são as amostras janeladas inteiras, visto que elas são obtidas na saída do bloco 28 na Fig. 9, a qual será discutida abaixo. A DCT inteira no bloco 14 da Fig. 9 é então implementada pelo algoritmo inteiro mostrado na Fig. 1, tal que a representação transformada represente o valor espectral inteiro na saída 30 do aparato mostrado na Fig. 9, em um exemplo do sinal de áudio relativo à Fig. 9.
[00051] A seguir, com relação à Fíg. 2, será ilustrado um meio para transformação inversa correspondendo a Fig. 1, onde fora o bloco de valores de saída inteiros na saída do bloco 112 da Fig. 1, também o segundo bloco de valores somados é usado na saída do· meio 106 da Fig. 1. Com referência à Fig. 4, a qual será discutida em mais detalhes abaixo, isso corresponde ao caso em que meramente os blocos 150 e 130 estão presentes, mas não o bloco de transformação* 124.
[00052] A Fig. 2 mostra um aparato inventivo para a co*nversão inversa de um bloco de valores de saída inteiros da representação transformada, como ele será obtido na saída 114 da Fig. 1, e o segundo bloco de valores somados. 0 2a bloco de valores somados é inserido em uma entrada 120 do aparato para conversão inversa, mostrado na Fig. 2. 0 bloco de valores de saída da representação transformada é inserido em uma entrada adicional 122 do aparato para conversão inversa.
[00053] Ο 2- bloco de valores somados é inserido em um meio· 130 para processamento desse bloco através do uso da 2~ regra de transformação, quando a última regra de transformação usada durante a codificação for a 2- regra de transformação. No lado da saida, o meio 130 fornece um primeiro bloco de valores transformados, o qual é fornecido a um meio 132 para arredondamento, o qual novamente gera um primeiro bloco de valores transformados arredondados no lado da saída. O primeiro bloco de valores transformados arredondados é em seguida subtraído a partir do bloco de valores de saída da representação transformada por um meio 134 de modo a obter o primeiro bloco de valores discretos em uma primeira saída 149 do aparato da Fig, 2.
[00054] Esse primeiro bloco de valores discretos é fornecido a um meio 150 para o processamento desse bloco através do uso da 1- regra de transformação para obter um segundo· bloco de valores transformados na saída do meio 150. Esse segundo bloco de valores subtraídos transformados é novamente arredondado no meio 152 para se obter um segundo· bloco· de valores transformados arredondados. Esse segundo· bloco de valores transformados arredondados é em seguida subtraído· a partir do 2- bloco de valores somados fornecido no lado da entrada, o qual foi inserido através da entrada 120, para se obter um segundo bloco de valores discretos em uma saída 136 no lado de saída.
[00055] Com respeito à relação de 1-, 2- e 3â regras de transformação, assim como com respeito à implementação específica dos blocos de funções individuais na Fig, 2 por unidades comuns de função e uma armazenagem de controle/temporária de sequência correspondente, faz-se referência às explicações feitas com relação à Fig, 1, [00056] A seguir, com referência à Fig. 3, será discutida uriâ configuração preferida do aparato para conversão em uma representação' transformada geralmente ilustrada na Fig. 1. A configuração· na Fig. 1 compreende uma transformaçâo/arredondamento adicional comparada com a Fig. 1, de modo a gerar o bloco adicional de valores de saída inteiros do segundo bloco de valores somados.
[00057] A primeira entrada 100a compreende P linhas de entrada x0, xN_i para a entrada de N valores do primeiro bloco de valores discretos, A segunda entrada 100b também compreende P linhas para a entrada de N valores xN, ..., X2m~] do segundo bloco de valores discretos. O meio 102 da Fig. 1 é mostrado na Fig. 3 como ura transformador DCT-IV, O transformador DCT 102 é formado· para gerar N valores de salda a partir de N valores de entrada, cada um dos quais será então· arredondado pelo meio· 104 através da especificação de arredondamento indicada pelo "[.]" conforme mostrado na Fig. 3. O meio 106 para a soma é ilustrado tal que ocorra uma soma por valor. Isso significa que o valor de saída do meio 102 com índice 0 é somado com o primeiro valor do segundo bloco de valores discretos tendo o índice N. Assim, geralmente o valor do primeiro bloco de valores transformados arredondados com um número· ordinal i é somado individualmente na saída do· meio de arredondamento· 104 com o· valor discreto do segundo bloco de valores de saída cora ura número ordinal N+i, onde i é um índice variável que vai de 0 a N-l.
[00058] 0 meio 108 para processamento através do uso da 2- regra de transformação também é projetado como um transformador DCT-IV. Ha configuração· preferida mostrada na Fig. 3, o meio 112 para subtração também é formado para realizar uma subtração por valor, na qual os valores de saída do arredondador 110, o que quer dizer os valores do segundo bloco de valores transformados arredondados, são subtraídos individualmente a partir do primeiro bloco de valores discretos, Na configuração mostrada na Fig. 3, é preferido realizar uma subtração correspondente, na qual um valor do segundo· bloco é ura número ordinal de N+i subtraído de ura valor do primeiro bloco com o número ordinal 1, onde i novamente varia de 0 a N-l . Como· alternativa, pode-se realizar outras somas/subtrações nas quais, por exemplo, ura valor de um bloco, com o número ordinal N-l, seja subtraído do valor do outro bloco, com o número ordinal N-l, desde que este seja correspondentemente considerado· na conversão inversa.
[00059] Po lado de saída, o meio 112 para subtração já fornece um bloco de valores de saída inteiros da representação transformada remanescentes, o que significa os valores de saída inteiros y0 a yN..i da representação transformada. De modo a obter, caso opcionalmente se deseje, os valores de saída inteiros da representação transformada, o que significa o bloco adicional y:: a ystri, o bloco de valores de saída inteiros da representação transformada aplicado à saída 114 é submetido a uma transformação através do· uso da terceira regra de transformação pelo· transformador para frente 140, onde os valores de saída dele são novamente arredondados conforme ilustrado por um meio· de arredondamento 142 para realizar uma adição desses valores com o segundo blooo de valores somados na saída do somador 106, conforme representado pelo número de referência 144 na Fig. 3. Os valores de saída do somador 144 representam um bloco adicional 146 de valores de saída inteiros da representação transformada, os quais são indicados por yN a yas-i- [00060] A seguir, um aparato inventivo para a conversão inversa da representação transformada de acordo com uma configuração preferida será ilustrado com referência à Fig, 4. Deve-se observar que as operações realizadas pelo aparato na Fig. 3 podem ser invertidas de uma maneira sem perdas pelo aparato ilustrado na Fig. 4. A Fig. 4 corresponde à Fig. 2, exceto pelo estágio adicional de transformação/arredondamento para a geração do segundo bloco de valores de saída transformados, o qual é inserido na entrada 120 na configuração mostrada na Fig. 2. Deve-se observar que a função de adição é respectivamente invertida pela função de subtração. Além disso, deve-se notar que um par adicionador/subtrator (144 da Fig. 3 e 128 da Fig, 4) também pode ser provido com quantidades de entrada invertidas em relação ao sinal, de modo que o adicionador 144 realize na verdade uma operação de subtração, quando um grupo· de quantidades de entrada é provido com sinais negativos em comparação com o caso ilustrado, desde que isso seja considerado na contraparte (128 na Fig. 4), a qual iria então na verdade realizar uma operação de adição.
[00061] 0 subtrator 128, o adicionador 134, assim como o subtrator adicional 154 mostrados na Fig. 4 são novamenté conformados para realizar uma adição/subtração individual por valor, onde novamente o mesmo processamento de números ordinais é usado como foi explicado com relação à Fig, 3, Caso outro uso· de números ordinais fosse realizado na Fig, 3, conforme é mostrado, isso seria correspondentemente considerado na Fig. 4.
[00062] 0 primeiro bloco de valores discretos 136, indicado· por x0 a xN-i, já está presente na saída do subtrator 134, De modo a obter também o· restante da representação transformada inversa, o primeiro bloco de valores discretos é fornecido· ao transformador 150, O qual opera com a primeira regra de transformação, cujos valores no lado da saída são arredondados pelo arredondador 152 e subtraídos a partir do segundo bloco· de valores subtraídos na saída do subtrator 128, de modo· a finalmente obter também o segundo bloco de valores discretos 156, indicado por xN, x2N-i- [00063] A seguir, com referência às Figs. 5-8, será discutida a fundamentação matemática para o aparato inventivo conforme ilustrado pelas Fígs. 1 - 4, Através do aparato inventivo· ilustrado para conversão e para conversão inversa, respectivamente, sâo providos os métodos para transformação de inteiros para codificação de áudio sem perdas, onde o· erro de aproximação é reduzido. Acima disso, o esfo-rço- de cálculo também é considerado em que a abordagem conhecida de aplicação do esquema de elevação a cada rotação de Givens não é mais usada, onde sempre ocorrem borboletas triviais de soma-diferença. Elas aumentam o esforço de cálculo significativamente em comparação com a versão não inteira original da transformação a ser reproduzida.
[00064] Normalmente, o esquema de elevação é usado para se obter uma aproximação de inteiro· invertível de uma rotação- de Givens.
[00065] Essa aproximação de inteiro é obtida através do uso de uma função de arredondamento após cada uma das adições, o que significa após cada etapa de elevação.
[00066] 0 esquema de elevação também pode ser usado para uma aproximação de inteiro invertível de certas operações de escalonamento. Na publicação especializada R. Geiger e G. Schüller, "Integer low delay and MDCT filter banks" Proc. of the Asilomar Conf. On Signals, Systems and Computers, 2002, a seguinte separação por elevação de uma matriz de escalonamento de 2 x 2 com determinante igual a 1 é ilustrada e descrita: [00067] De acordo com a invenção, essa separação por elevação, que é unidimensional, o que significa que ela se refere meramente a uma matriz de escalonamento de 2 x 2, é estendida para o caso multidimensional. Individualmente, todos os valores da equação anterior são substituídos por matrizes de η x n, onde n, que significa o número de valores discretos de um bloco, é maior do que ou igual a 2. Assim, o resultado é que para qualquer matriz T de n x n, que seja preferivelmente invertivel, é possivel a seguinte separação em matrizes de bloco de 2n x 2n, onde En descreve a matriz identidade η x n: [00068] Fora operações simples, tais como permutações ou multiplicações por -1, todos os três blocos dessa separação possuem a seguinte estrutura geral: [00069] Para essa matriz em bloco de 2n x 2n, pode-se usar um esquema de elevação inventivamente generalizado, o qual também é subsequentemente referenciado como uma elevação multidimensional.
[00070] Para um vetor dos valores x = (xo, . . ., χ?,Λ- i), a aplicação dessa matriz em. bloco fornece a seguinte equação: [00071] Deve-se observar que há um vetor no lado direito da equação· anterior, cuja dimensão, que significa o número· de linhas, é igual a 2n. Os primeíro-s n componentes, que significam os componentes de 0 a n-1, correspondem a xq a yn i. Os segundos n componentes, que significa a segunda metade do vetor, o que resulta no lado direito da equação anterior, são iguais à soma do segundo bloco de valores discretos, o que significa xn, ..., x;-,·,.i, mas agora somados com a multiplicação da matriz A, o que corresponde à matriz de transformação das Figs. 1 - 4 e o primeiro bloco de valores discretos x0, . . ., Xn-i ■ A matriz de transformação representa a primeira, a segunda e a terceira regras de transformação, respectivamente, [00072] Similar ao esquema de elevação comum com matrizes de 2x2 na forma: essas duas matrizes de 2n x 2n podem ser usadas para aproximações inteiras invertiveis da transformação T como segue, Para valores de entrada inteiros (xCl, . . ., x 2 π -1) , os valores de saída de ponto flutuante íy0, ..., yn_i) = A- (xq, . x._r, -1) são arredondados para valores inteiros, antes de serem adicionados a valores inteiros (xr!, . . ., xan ■ i)- O inverso da matriz em bloco resulta da seguinte maneira: [00073] Assim, esse processo pode ser invertido sem erros através do simples uso da mesma matriz A e da mesma função de arredondamento e agora pela subtração dos valores resultantes ao invés da adição no processamento para frente. O processamento para frente é ilustrado na Fig. 6, enquanto o processamento para trás é ilustrado· na Fig. 7. Deve-se observar que a matriz de transformação na Fig. 6 é idêntica à matriz de transformação na Fig. 7, o que é preferido por razões de simplicidade da implementação, [00074] Visto que os valores (xc,f ..., χη·ι) não são modificados na etapa para frente mostrada na Fig. 6, eles ainda estão presentes para a etapa inversa, o que significa a etapa para trás na Fíg. 7. Deve-se observar que não há restrições específicas para a matriz A, Assim, ela não necessariamente tem de ser invertível.
[00075] De modo a obter uma aproximação inteira invertível da MDCT conhecida, a MDCT é separada era rotações de Gívens em um primeiro estágio, onde esse estágio é o estágio de janelamento, e em um subseqüente estágio de DCT-IV. Essa separação é ilustrada na Fig. 10, a qual será discutida abaixo e descrita em detalhes em DE 10129240 Al.
[00076] Em oposição à técnica anterior, onde a DCT-IV é separada em vários estágios de rotações de Givens, de acordo com a invenção, a própria transformação é deixada e era seguida arredondada.
[00077] Assim, como é sabido, a aproximação inteira da DCT-IV é realizada por vários estágios de rotações de Givens baseados em elevação. O número de rotações de Givens é determinado pelo algoritmo rápido subjacente usado. Dessa maneira o número de rotações de Givens é dado por 0 (N log N) para uma transformação' do comprimento N. 0 estágio de janelamento de cada separação de MDCT consiste apenas era M/2 rO'taçõ'€s de Givens ou de 3N/2 etapas de arredondamento. Assim, particularmente era altos comprimentos de transformação, como os usados em aplicações de codificação de áudio (por exemplo, 1.024), a aproximação inteira da DCT-IV fornece a principal contribuição para o erro de aproximação, [00078] A abordagem inventiva usa o esquema de elevação multidimensional descrito. Por conseguinte, o número de etapas de arredondamento na DCTtV é reduzido para 314/2, o que significa que foi tornado igual ao· número de etapas de arredondamento no estágio de janelamento, comparado com cerca de 2N log2 N etapas de arredondamento na abordagem convencional baseada em elevação.
[00079] De acordo com a invenção, a DCT-IV é aplicada simultaneamente a dois blocos de sinais. Por conseguinte, uma possibilidade é mostrada na Fig. 5, onde simplesmente, por exemplo, dois blocos de amostras subsequentes no tempo são sujeitos a uma DCT-IV. Os dois blocos, os quais sâo sujeitos às duas transformações, também podem ser amostras de dois canais de um sinal multicanal.
[00080] A separação da equação de elevação multidímensional acima descrita é aplicada à regra de transformação, a qual também pode ser considerada como uma matriz N x N. Visto· que particularmente na DCT-IV o inverso· é novamente a DCT-IV, resulta a seguinte separação para o conceito mostrado na Fig, 5;
[00081] As permutações das multiplicações por -1 podem ser extraídas em matrizes em bloco individuais, resultando o· seguinte contexto: [00082] Assim, a aplicação de uma transformação a dois blocos de sinais, o que significa dois blocos de valores discretos, pode ser obtida com preferivelmente três etapas de elevação multidimensional: [00083] A equação acima é graficamente ilustrada na Fig. 3 com. relação a uma configuração preferida da presente invenção. A conversão inversa é, como foi explicado, ilustrada de maneira correspondente na Fig. 4.
[00084] Com a abordagem inventiva, duas transformações DCT-IV de comprimento N podem ser implementadas de uma maneira ínvertivel, onde apenas 3N etapas de arredondamento são necessárias, o que significa 3N/2 etapas de arredondamento por transformação.
[00085] A DCT-IV nas três etapas de elevação multidimensionais pode ter uma implementação arbitrária, o que significa, por exemplo, uma implementação baseada em ponto flutuante ou em ponto fixo. Ela nem precisa ser invertível. Ela apenas tem de ser executada exatamente da mesma maneira nos processos para frente e para trás. Como resultado, esse conceito é adequado a altos comprimentos de transformação, tais como, por exemplo, 1.024, como eles são usados nas aplicações atuais de codificação de áudio.
[00086] Toda a complexidade de computação é igual a 1,5 vezes a complexidade de computação da implementação não inteira das duas transformações DCT-IV. Essa complexidade de computação é ainda sígnificativamente inferior às implementações inteiras convencionais baseadas em elevação, as quais são cerca de duas vezes mais complexas do que a DCT-IV convencional, visto que essas implementações têm de usar as triviais borboletas para raais/menos baseadas no· esquema de elevação· usado, de modo a obter conservação de energia, conforme é descrito em R, Geiger, T, Sporer, J, Koller e K, Brandenburg, "Audio Coding based on Integer Transforma" em 11ith AES Convention, New York, 2001.
[00087] A abordagem ilustrada calculará pelo menos duas transformações DCT-IV simultaneamente, o que significa dentro de uma conversão. Isso pode, por exemplo, ser alcançado através do cálculo da transformação DCT-IV' para dois blocos subseqüentes do sinal de áudio ou duas imagens subsequentes de um sinal de imagem. No caso de ura sinal estéreo· de dois canais, isso também pode ser obtido através do cálculo· da DCT-IV dos canais esquerdo· e direito em uma ação de conversão e uma ação de conversão inversa, respectivamente. A primeira versão introduz um atraso adicional de um bloco· no· sistema. A segunda versão é possível para canais estéreos e geralmente para sinais rrtult icanal, respectivamente.
[00088] Como alternativa, caso ambas as opções não sejam desejáveis, mas caso um comprimento· de processamento de bloco normal de N valores deva ser mantido, a DCT-IV de comprimento· N pode ser separada em duas transformações DCT-IV de comprimento N/2. Nesse contexto, faz-se referência a Y.
Zeng, G. Bi e Z. Lin, "Integer sinusoidal transferas based on lifting factorization", em Proc. OCASSP'01, maio de 2001, pp. 1,181 - 1,184, onde essa separação é realizada, Além das doas transformações DCT de comprimento N/2, são necessários vários estágios adicionais de rotações de Givens. Além disso, nesse algoritmo, é usada uma matriz em bloco isto é, N/2 borboletas para mais/menos, uma matriz diagonal em bloco com N/2 rotações de Givens e, além disso, várias matrizes de permutação. Através do uso desses estágios adicionais de N/2 rotações de Givens, a abordagem de elevação multidimensional também pode ser usada para o cálculo de apenas uma DCT-IV de comprimento N, A estrutura fundamental desse algoritmo é ilustrada na Fig, 8, onde, fora o· próprio estágio de conversão, onde sáo usadas duas transformações DCT-IV com o comprimento N/2, primeiro um estágio de borboleta está presente para calcular o primeiro e o· segundo blocos de valores discretos, os quais normalmente têm um comprimento de N/2. No lado da saída, é provido um estágio de rotação para se obter os valores de saída yo, - - -, ytw, os quais são iguais aos valores de saída de uma operação DCT-IV da Fig. 5, como pode ser visto a partir de uma comparação dos índices do lado de entrada e do lado de saída das Figs. 8 e 5, a partir do bloco de valores de saída da representação transformada e do bloco adicional de valores de saída da representação transformada, os quais agora têm cada um meramente N/2 valores.
[00089] Até agora, foi ilustrada meramente a aplicação da elevação multidimensional a matrizes em blocos da seguinte forma: [00090] Todavia, também é possível separar outras matrizes em bloco em etapas de elevação multidimensionais. Por exemplo, a separação a seguir pode ser usada para implementar a combinação de um estágio com borboletas para mais/menos normalizadas e dois blocos de transformações DCT-IV através de três etapas de elevação multidimensional;
[00091] Torna-se óbvio a partir da equação anterior que a primeira regra de transformação usada no colchete esquerdo da equação anterior e a segunda regra de transformação usada no colchete intermediário da equação· anterior e a terceira regra de transformação usada no último colchete da equação anterior não têm de ser idênticas, Além disso·, torna-se óbvio da equação anterior que podem ser separadas não apenas matrizes em bloco em que meramente os elementos da diagonal principal estão ocupados, mas que também matrizes plenamente ocupadas podem ser processadas de acordo· com a invenção. Além disso, deve-se observar que a presente invenção não se limita ao fato de que as regras de transformação, que são usadas na conversão em uma representação transformada, têm de ser idênticas ou precisam ter qualquer relação umas com as outras, tal que, por exemplo, a segunda regra de transformação seja o inverso da regra de transformação da primeira regra de transformação. Geralmente, três diferentes regras de transformação poderíam ser usadas, desde que isso seja considerado na representação inversa.
[00092] Nesse contexto, faz-se novamente referência à Fig. 3 e à Fig, 4, Ao se converter os valores discretos para uma representação transformada, o meio 102 pode ser conformado para implementar qualquer regra de transformação 1. Além disso, o meio 108 também pode ser conformado para usar qualquer outra regra de transformação ou a mesma, a qual é referenciada como regra de transformação 2. Além disso, o meio 140 pode ser conformado para usar em geral qualquer regra de transformação 3, a qual não necessariamente tem de ser igual à primeira ou à segunda regra de transformação.
[00093] No entanto, na conversão inversa da representação transformada, tem de ser encontrada uma adaptação às regras de transformação 1-3 ilustradas na Fig. 3, pois o primeiro meio 124 para conversão não realiza nenhuma regra de transformação além da regra de transformação 3 realizada no bloco 140 da Fig. 3. De maneira correspondente, o meio 130 na Fig. 4 tem. de realizar a regra de transformação 2, a qual também tem de ser realizada pelo bloco 108 na Fíg. 3. Finalmente, o meio 150 da Fig, 4 tem de realizar a regra de transformação 1, a qual também tem de ser realizada pelo meio 102 da Fig. 3, de modo a ser obtida uma conversão inversa sem perdas, [00094] A seguir, com referência às Figs. 9 - 11, a separação do janelamento MDCT é representada novamente, conforme descrita em DE 10129240 Al, onde a separação do janelamento MDCT em rotações de Givens com matrizes de elevação e correspondentes arredondamentos podem ser combinadas de forma vantajosa com o conceito ilustrado na Fig. 1 para a conversão e na Fig. 2 para a conversão inversa, de modo a obter uma aproximação MDCT inteira completa, o que significa uma MDCT inteira (IntMDCT) de acordo com a presente invenção, onde tanto ura conceito· de transformação para frente como um conceito de transformação· para trás foi realizado coto o· exemplo de uma MDCT.
[00095] A Fig. 9 mostra um diagrama de visão geral para o aparato preferido inventivamente para processamento de amostras discretas no tempo, as quais representam ura sinal de áudio-, para se obter valores inteiros sobre os quais opera o algoritmo de transformação inteira Int-MDCT. As amostras discretas no tempo são janeladas pelo aparato mostrado na Fig. 9 e opcionalmente convertidas em uma representação espectral. As amostras discretas no tempo inseridas no aparato· na entrada 10 são janeladas com uma janela w com um comprimento correspondente a 2N amostras discretas no tempo para se obter amostras janeladas inteiras em uma saída 12, as quais são adequadas para serem convertidas em uma representação espectral através de uma transformação e particularmente o meio 14 para a realização de uma DCT inteira. A DCT inteira é conformada para gerar N valores de saída de N valores de entrada, o que é contrário à função MDCT 408 da Fíg. 12a, a qual gera meramente N valores espectrais de 2N amostras janeladas devido à equação da MDCT.
[00096] Para o janelamento das amostras discretas no tempo·, primeiro são escolhidas duas amostras discretas no tempo em um meio 16, as quais juntas representam um vetor de amostras discretas no tempo. Uma amostra discreta no tempo selecionada pelo meio 16 fica no primeiro quarto da janela. A outra amostra discreta no tempo fica no segundo quarto da janela como será discutido· com mais detalhes com referência à Fig. 11. O vetor gerado pelo meio 16 agora é provido de uma matriz de rotação de dimensão 2x2, onde essa operação não é realizada imediatamente, mas através de várias das assim chamadas matrizes de elevação.
[00097] Uma matriz de elevação tem a característica de ter apenas um elemento dependendo· da janela w e diferente de M" ou "0".
[00098] A fatorízação de transformadas do tipo wavelet em etapas de elevação· é ilustrada na publicação especializada "Factoring Wavelet Transforms Into Lifting Steps", Ingrid Daubechíes e Wim Sweldens, Pré-Publicação, Bell Laboratories, Lucent Technologies, 1996. Geralmente, um esquema de elevação é um relacionamento simples entre pares de filtros de reconstrução perfeitos, os quais têm o mesmo filtro· de baixa passagem ou de alta passagem. Cada par de filtros complementares pode ser fatorizado em etapas de elevação. Isso se aplica particuiarmente a rotações de Givens. Será considerado o caso em que a matriz: de polifase é uma rotação de Givens, Aplica-se o seguinte;
(D
[00099] Cada uma das três matrizes de elevação à direita do sinal de igual possui o valor "1" como elemento da diagonal principal. Além disso, em cada matriz de elevação, um elemento da diagonal secundária é igual a 0 e um elemento da diagonal secundária depende do ângulo de rotação a.
[000100] O vetor é agora multiplicado pela terceira matriz de elevação, isto é, a matriz de elevação na extremidade direita da equação acima, para se obter um primeiro vetor de resultados. Isso é ilustrado na Fig. 9 através de um meio 18. Agora, o primeiro vetor de resultado é arredondado com uma função de arredondamento arbitrária, a qual mapeiâ a quantidade de números reais para a quantidade de números inteiros, como é ilustrado na Fig. 9 por ura meio 20. Um primeiro vetor arredondado de resultados é obtido na salda do meio 20. 0 primeiro vetor arredondado de resultados é agora inserido no meio 22 para multiplicação dele pela matriz de elevação do meio, isto é, a segunda, para se obter um segundo vetor de resultados, o qual é de novo arredondado em um meio 2 4 para se obter um segundo vetor arredondado de resultados. 0 segundo vetor arredondado de resultados é agora inserido no meio 26 paxa multiplicação dele pela matriz de elevação mostrada na esquerda da equação acima, isto é, a primeira matriz de elevação, para se obter um terceiro vetox de resultados, o qual é era seguida finalmente arredondado através de um meio 28 para se obter finalmente amostras janeladas inteiras na salda 12, as quais agora, caso se deseje uma representação espectral delas, têm de ser processadas pelo meio 14 para se obter valores espectrais inteiros era uma saída espectral 30.
[000101] 0 meio 14 é preferivelmente identificado como· uma DCT inteira.
[000102] A transformada do co-seno discreto de acordo com o tipo 4 (DCT-IV) com um comprimento N é dada pela seguinte equação; (2) [000103] Os coeficientes da DCT-IV formam uma matriz N x N ortogonal. Cada matriz N x N ortogonal pode ser separada em N (N-l)/2 rotações de Givens conforme discutido na publicação especializada P. P. Vaidyanathan, "Multirate Systems And Filter banks", Prentice-Hall, Elglewood Cliffs, 1993. Deve-se observar que também há outras separações.
[000104] Com relação às classificações dos diferentes algoritmos de DCT, deve-se fazer referência a Η. Ξ. Malvar, "Signal Processing With Lapped Transtornas", Artech House, 1992. Geralmente, os algoritmos de DCT diferem pelo tipo de suas funções básicas. Enquanto o DCT-IV, que é o preferido aqui, compreende funções básicas não simétricas, isto é, ura co-seno de quarto de onda, um co-seno de 3/4 de onda, um co-seno de 5/4 de onda, ura co-seno de 7/4 de onda, etc., a transformada do co-seno discreta, por exemplo, do tipo II (DCT-II), possui funções básicas simétricas no eixo e simétricas no ponto. A 0- função base possui um componente direto, a primeira função básica é um meio co-seno de onda, a segunda função básica ê um co-seno inteiro de onda, etc. Devido ao fato de que a DCT-II particularmente considera o componente constante, ela é usada em codificação de vídeo, mas não em codificação de áudio, visto· que o componente constante não é relevante em codificação de áudio, ao contrário da codificação de video.
[000105] A seguir, faz-se referência ao fato de como o ângulo de rotação oí da rotação de Givens depende da função de janela.
[000106] üma MDCT cora um comprimento de janela de 2N pode ser reduzida a uma transformada do co-seno discreta do tipo IV com um comprimento N. Isso· é obtido através da realização da operação TDAC explicitamente no domínio do tempo e em seguida aplicando-se a DCT-IV. Em uma sobreposição de 50%, a metade esquerda da janela para um bloco t se sobrepõe cora a metade direita do bloco· anterior, isto é, o bloco t — 1 . A parte da sobreposição dos dois blocos subsequentes t-1 e t é pré-processada da seguinte maneira no domínio do tempo, isto é, antes da transformação, isto é, entre a entrada 10 e a saida 12 da Fig. 9: (3) [000107] Os valores indicados cora til são valores na saída 12 da Fíg. 9, enquanto· os valores de x sem til na equação acima são os valores na entrada 10 e após o meio 16 para seleção, respectivamente. O índice variável k varia de 0 a N/2-1, enquanto w representa a função de janela. A partir da condição TDAC para a função· de janela w, aplíca-se o seguinte contexto: (4) [000108] Para certos ângulos k = 0, N/2-1, esse pré-processamento no domínio do· tempo pode ser escrito como uma rotação de Givens, conforme foi explicado.
[000109] O ângulo o da rotação de Givens depende da função de janela w da seguinte maneira: a = arctan[w(N/2-1-k) / w(N/2 + k)] (5) [000110] Deve-se observar que é possível usar qualquer função de janela w, desde que ela preencha essa condição de TDAC.
[000111] A seguir, um codificador e decodificador em cascata é descrito com referência à Fig. 10. As amostras discretas no tempo x (0) a x (2N-1), que são· " janeladas" juntas por uma janela são primeiro selecionadas de tal maneira pelo meio· 16 da Fig. 9 que a amostra x (0) e a amostra x(N-l), isto é, uma amostra do primeiro quarto da janela e uma amostra do segundo quarto da janela sâo selecionadas para formar o vetor na saída do meio 16. As setas cruzadas representara esquematícamente as multiplicações de elevação e os subsequentes arredondamentos dos meios 18, 20 e 22, 24 e 26, 28, respectivamente, para se obter as amostras janeladas inteiras na entrada dos blocos DCT-IV.
[000112] Quando o primeiro vetor tiver sido processado como descrito acima, além disso, um segundo vetor das amostras x(N/2-1) e x{n/2), isto é, novamente uma amostra do primeiro quarto da janela e uma amostra do segundo quarto da janela, é selecionada e novamente processada pelo algoritmo descrito na Fig. 9, De maneira análoga, todos os demais pares de amostras do primeiro e do segundo quartos da janela são processados. 0 mesmo processamento é realizado para o terceiro e o quarto quartos da primeira janela, Agora, 2N amostras inteiras janeladas estão presentes na saída 12, as quais são agora inseridas em uma transformação DCT-IV conforme ilustrado na Fig. 10, Particularmente, as amostras janeladas inteiras do segundo e terceiro quartos sâo inseridas em uma DCT. As amostras inteiras janeladas do primeiro quarto da janela são processadas em uma DCT-IV anterior em conjunto com as amostras inteiras janeladas do quarto quarto da janela anterior. De maneira análoga, os quartos quartos das amostras inteiras janeladas da Fig. 10 são inseridas em uma transformação DCT-IV com o primeiro quarto da próxima janela. A transformação DCT-IV integral intermediária mostrada na Fig, 10 agora fornece N valores espectrais inteiros y < 0) a y(N-l). Esses valores espectrais inteiros agora podem ser facilmente codificados por entropia, sem exigir uma quantização intermediária, visto que o janelamento e a transformação fornecem valores de saída inteiros, [000113] Um decodificador é ilustrado na metade direita da Fig. 10. O decodificador, consistindo em transformação inversa e "janelamento inverso", opera inversamente ao codificador. Ê sabido que uma DCT-IV inversa pode ser usada para a transformação inversa de uma DCT-IV, conforme ilustrado na Fíg. 10. Os valores de saída do decodificador DCT-IV 34 são agora processados ínversamente, conforme ilustrado na Fig. 10, com os valores correspondentes da transformação prévia e da transformação seguinte, respectivamente, de modo a gerar amostras de áudio discretas no tempo κ (0) a x(2N-1) novamente a partir das amostras janeladas inteiras na saída do meio 34 e das transformações prévia e seguinte, respectivamente.
[000114] A operação do lado de saída é realizada por uma rotação de Givens inversa, isto é, tal que os blocos 26, 28 e 22, 24 e 18, 20, respectivamente, sejam passados na direção oposta. Isso é ilustrado em mais detalhes com relação à segunda matriz de elevação da equação 1. Caso (no codificador) o segundo vetor de resultado seja formado por uma multiplicação do primeiro vetor arredondado de resultado pela segunda matriz de elevação (meio 22), resultará a seguinte expressão: Uy) h» [x,y+xsen o) (6) [000115] Os valores x, y no lado direito da equação 6 são inteiros. No entanto, isso não se aplica ao valor de x sen qí. Aqui, a função de arredondamento r tem de ser introduzida, conforme ilustrado na equação subseqüente: [000116] Essa operação é realizada pelo meio 24.
[000117] 0 mapeamento inverso (no decodíficador) é definido da seguinte maneira: (8) [000118] Devido ao sinal de menos antes da operação de arredondamento, torna-se óbvio que a aproximação inteira da etapa de elevação pode ser invertida sem a introdução de um erro. A aplicação dessa aproximação a cada uma das três etapas de elevação leva a uma aproximação inteira da rotação de Givens. A rotação arredondada (no codificador) pode ser invertida (no decodificador) sem se introduzir um erro e pela passagem através das etapas de elevação arredondadas em ordem reversa, isto é, quando o algoritmo da Fíg. 9 é executado de baixo para cima durante a decodífreação.
[000119] Quando a função· de arredondamento r é simétrica no ponto, a rotação arredondada inversa é idêntica à rotação arredondada cora o ângulo -or e é como segue: (9) [000120] As matrizes de elevação para o decodificador, isto é, para a rotação de Givens inversa, resulta neste caso imediatamente da equação (1) através da mera substituição da expressão "sen o" pela expressão "-sen a".
[000121] A seguir, é ilustrada novamente a separação de uma MDCT comum com janelas sobrepostas 40 a 45 com relação à Fig. 11. Cada uma das janelas 40· a 46 se sobrepõe de 50%.
Por janela, as rotações de Givens são realizadas dentro do primeiro e segundo quartos de uma janela e dentro do terceiro e quarto quartos de uma janela, respectivamente, como é ilustrado esquematicamente pelas setas 48. Em seguida, os valores rotacionados, isto é, as amostras inteiras janeladas, são inseridos em uma DCT de N para N, tal que sempre o segundo- e o terceiro quartos de uma janela e o quarto e o primeiro- quartos de uma janela subseqíiente, respectivamente, sejam convertidos, em -conjunto, em uma representação espectral através de ura algoritmo de DCT-IV.
[000122] Assim, as rotações comuns de Givens são separadas em matrizes de elevação, as quais são realizadas em sequência, onde uma etapa de arredondamento após cada multiplicação de matriz de elevação, tal que os números em ponto flutuante sejam arredondados imediatamente após a sua ocorrência, tal que -o vetor de resultados tenha raer amente inteiros antes de cada multiplicação- de um vetor de resultado-s por uma matriz de elevação.
[000123] Assim., os valores de saída sempre permanecem inteiros, onde é preferível também usar valores de entrada inteiros. Isso nã-o representa uma limitação, visto, por exemplo-, que quaisquer amostras de PGM, quando- elas são armazenadas em ura CD, são valores inteiros cuja faixa de valores varia dependendo da largura de bit, isto é, dependendo de se os valores de entrada digitais discretos no tempo são valores de 16 bits ou valores de 24 bits. Todavia, o processo como um todo é ínvertívei, como foi discutido, através da execução de rotações inversas era uma direção inversa. Assim, existe uma aproximação inteira da MDCT com reconstrução perfeita, o que significa uma transformação sem perdas, [000124] A transformação mostrada fornece valores de saída inteiros ao invés de valores de ponto flutuante. Ela fornece uma reconstrução perfeita, de modo que nenhum erro é introduzido quando é realizada uma transformação para frente e depois outra para trás. De acordo cora uma configuração preferida da presente invenção, a transformação é uma substituição para a transformada do· co-seno discreta modificada. Outros métodos de transformação também podem ser realizados de maneira inteira, desde que seja possível uma separação era rotações e uma separação das rotações era etapas de elevação.
[000125] A MDCT inteira tem as características mais favoráveis da MDCT. Ela possui uma estrutura de sobreposição, onde é obtida uma melhor seletividade de freqüência do que com transformações de bloco sem sobreposição. Devido à função TDAC, que jã é considerada durante o janelamento antes da transformação, é mantida uma amostragem crítica, de modo que o número total dos valores espectrais representando um sinal de áudio seja igual ao número total de amostras de entrada.
[000126] Comparada cora uma MDCT normal, que fornece amostras em ponto flutuante, a transformação inteira preferida descrita mostra que comparada com a MDCT com nível baixo de sinal, o ruído é aumentado meramente na faixa espectral, enquanto esse aumento de ruído não é perceptível era níveis de sinal significativos. Ao invés disso, o processamento inteiro presta-se a uma implementação de hardware eficiente, visto que são· usados meramente etapas de multiplicação, as quais podem facilmente ser separadas em etapas de deslocamento/adição que podem ser implementadas em hardware de uma maneira simples e rápida. É claro que uma implementação por software também é possível.
[000127] A transformação inteira fornece uma boa representação espectral do sinal de áudio e ainda permanece na faixa dos números inteiros. Caso ela seja aplicada a partes tonais de um sinal de áudio, isso resulta em uma boa concentração de energia. Por conseguinte, pode-se construir um esquema de codificação eficiente sem perdas através do simples janelamento/transformação em cascata ilustrado na Fig. 9 com um codificado-r por entropia. É particularmente favorável o uso de codificadores empilhados usando valores de escape como o usado era MPEG AAC. É preferível escalonar para baixo· todos os valores de uma certa potência de dois até que eles caibam em uma tabela de código desejável para em seguida codificar adicionalmente os bits menos significativos omitidos. Em comparação com a alternativa de usar tabelas de código maiores, a alternativa descrita é mais favorável era relação ao· consumo de memória para armazenagem das tabelas de código. Também seria possível obter um codificador quase sem perdas através da simples omissão de certos bits menos significativos.
[000128] Particularmente para sinais tonais, a codificação por entropia dos valores espectrais inteiros permite um alto ganho de codificador. Para partes transientes do sinal, o ganho do· codificador é baixo, devido ao espectro· plano· dos sinais transientes, isto é, devido a um baixo número de valores espectrais serem iguais a ou próximos de 0, Conforme descrito em J. Herre, J. D. Johnston: "Enhancing the Performance of Percéptuâl Audio Coders by Using Temporal Noise Shapping ÍTNS)" 101. AES Convention, Los Angeles, 1996, Pré-Publicação 4384, essa planura pode ser usada através do uso de uma previsão linear na faixa de freqüência. Uma alternativa é uma previsão com laço aberto. Outra alternativa é o previsor com laço fechado·. A primeira alternativa, isto é, o· previsor cora laço aberto, é charaada de TNS. A quantização após a previsão leva a uma adaptação do ruido de quantização resultante à estrutura de tempo do sinal de áudio e assim evita pré-ecos em codificadores de áudio· psicoacústicos. Para codificação de áudio sem perdas, a segunda alternativa, isto é, cora ura previsor cora laço fechado, é mais adequada, visto que a previsão com laço fechado· possibilita uma reconstrução exata do sinal de entrada. Quando essa técnica é aplicada a um espectro gerado·, uma etapa de arredondamento tem de ser realizada após cada etapa do filtro de precisão para permanecer na faixa dos inteiros. Através do uso do filtro inverso e da mesma função de arredondamento, o espectro original pode ser exatamente reconstruído.
[000129] De modo a usar a redundância entre os dois canais para a redução de dados, uma codificação centro-lateral pode ser usada de uma maneira sem perdas, quando se usa uma rotação arredondada com um ângulo de n/4. Em comparação com a alternativa de calcular a soma e a diferença dos canais esquerdo e direito de um sinal estéreo, a rotação arredondada tem a vantagem da conservação de energia. 0 uso das assim chamadas técnicas de codificação de estéreo coo junto pode ser ativado ou desativado para cada banda, como é feito em ura MPEG AAC padrão. Também se pode considerar ângulos de rotação adicionais para reduzir a redundância entre dois canais de uma maneira mais flexível.
[000130] Dependendo das circunstâncias, o método inventivo para a conversão e para a conversão inversa, respectivamente, e para a transformação tempo—frequência ou a transformação freqüência-tempO', respectivamente, pode ser implementado em hardware ou em software. A implementação pode ser configurada era mídia de memória digital, particularmente um disco ou CD cora sinais dè controle legíveis eletronicamente, os quais podem colaborar com um sistema de computador programável, tal que o método seja executado. Geralmente, a invenção assim também consiste em um produto de programa de computador com um código de programa armazenado em um portador legível por máquina para realização do método inventivo quando o programa for executado em um computador. Em outras palavras, a invenção pode ser concretizada como um programa de computador com um código de programa para a realização do método quando o programa é executado em um computador.
REIVINDICAÇÕES
Claims (23)
1. Aparato para conversão de valores discretos era uma representação transformada com valores inteiros, caracterizado pelo fato de que os valores discretos possuem informações de áudio e/ou imagem, compreendendo: um meio (102) para o processamento de ura primeiro bloco de valores discretos através do uso de uma primeira regra de transformação para obter um primeiro bloco-de valores transformados; um meio (104) para o arredondamento do primeiro bloco de valores transformados para se obter um primeiro bloco de valores transformados arredondados; um meio (106) para a soma do primeiro bloco de valores transformados arredondados a um segundo bloco de valores discretos para se obter um segundo bloco de valores somados; um meio (108) para o processamento do segundo bloco de valores somados através do uso de uma segunda regra de transformação para se obter um segundo bloco de valores transformados; um meio (110) para o arredondamento do segundo bloco de valores transformados para se obter um segundo bloco de valores transformados arredondados; e um. meio (112) para a subtração do segundo bloco de valores transformados arredondados a partir do primeiro bloco de valores discretos para se obter um bloco de valores de saída inteiros da representação transformada.
2. Aparato de acordo com a reivindicação 1, caracterizado por compreender, ainda: um meio (140) para o processamento do bloco de valores de saída inteiros através do uso de uma terceira regra de transformação para se obter um bloco· de valores de saída transformados; um meio (142) para o arredondamento do bloco de valores de saída transformados para se obter ura bloco de valores de saída transformados arredondados; e um meio (144) para a soma do bloco de valores de saída transformados arredondados e do· segundo bloco de valores somados para se obter um bloco adicional de valores de saída inteiros da representação transformada,
3. Aparato de acordo com as reivindicações 1 ou 2, caracterizado pelo fato de que a primeira regra de transformação, a segunda regra de transformação e a terceira regra de transformação, respectivamente, compreendem uma matriz de transformação.
4. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que: a primeira regra de transformação, a segunda regra de transformação e a terceira regra de transformação, respectivamente, são idênticas entre si,
5. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que a primeira regra de transformação e a terceira regra de transformação· são uma regra de transformação para frente, enquanto a segunda regra de transformação é uma regra de transformação para trás.
6. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que: o meio (104) para arredondamento do primeiro bloco e o meio El 10) para arredondamento do segundo bloco e o meio (142} para arredondamento dos valores de saída transformados, respectivamente, são conformados para arredondar de acordo com a função de arredondamento que fornece resultados arredondados, a precisão dos quais é inferior à precisão de máquina de ura computador que compreenda o aparato.
7. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o primeiro bloco de valores discretos possui valores discretos de um número ordinal 0 até ura número ordinal N-l, onde o segundo· bloco de valores discretos possui valores discretos de um número· ordinal N até um número ordinal 2N-1, onde o primeiro bloco de valores transformados arredondados possuí um número ordinal de 0 a N-1 e onde o meio (106) para a soma é conformado para realizar uma adição por valor, de modo que um valor do bloco de valores transformados arredondados, com um número ordinal i, seja adicionado a um valor do segundo bloco de valores discretos, com um número ordinal i+N, onde i é ura índice variável estendendo-se de 0 a N-l.
8. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o· primeiro bloco de valores discretos possui valores discretos com um número ordinal 0 até um número ordinal N-l, onde o segundo bloco de valores discretos possui valores discretos de um número ordinal 0 até um número ordinal 2M-1, onde o segundo bloco de valores transformados arredondados possui valores entre um número ordinal N e 2N-1, onde o meio (112) para subtração é conformado para subtrair um valor do bloco de valores transformados arredondados, com o número ordinal n+i, de um valor do primeiro bloco, com o número ordinal i, onde i é um índice variável que se estende de 0 a N-l.
9. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o primeiro e o segundo blocos de valores discretos compreendem valores discretos inteiros.
10. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o meio (104) para o arredondamento do primeiro bloco de valores transformados ou o meio (110) para o arredondamento do segundo bloco de valores transformados é conformado para arredondar de acordo com a mesma especificação de arredondamento.
11. Aparato de acordo com a reivindicação 3, caracterizado pelo fato de a matriz de transformação subjacente à primeira regra de transformação, a matriz de transformação subjacente à segunda regra de transformação· e a matriz de transformação subjacente à terceira regra de transformação, respectivamente, são, cada uma, uma matriz quadrada tendo um número de linhas e colunas, respectivamente, que são iguais aos valores discretos no primeiro ou segundo blocos,
12. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o meio· (102) para processamento de acordo com a primeira regra de transformação e o meio (108) para processamento de acordo com a segunda regra de transformação sao conformados em um transformador, e onde é provida ainda uma sequência de controle, a qual é conformada para fornecer ao transformador inicialmente o primeiro bloco de valores discretos e depois o segundo bloco de valores somados,
13. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o meio· (10 4) para arredondamento do primeiro bloco de valores transformados e o meio (110) para arredondamento do segundo bloco de valores transformados são conformados em um ar redonda dor*, e Onde é provida ainda uma seqüência de controle para fornecer ao arredondador inicialmente o primeiro· bloco de valores discretos e depois o· segundo bloco de valores transformados,
14. Aparato de acordo com uma das reivindicações anteriores, caracterizado pelo fato de que o primeiro e o segundo blocos de valores discretos são amostras de áudio do primeiro e segundo canais de um sinal de áudio multicanal,
15. Aparato de acordo com uma das reivindicações de 1 a 13, caracterizado· pelo fato de que o primeiro bloco e o segundo bloco sao amostras de tempo subsequentes de um sinal de áudio,
16. Aparato de transformação para frente, de acordo com uma das reivindicações de 1 a 15, caracterizado por compreender : um meio (16, 18, 20, 22, 24, 26, 28) para o janelamento de um primeiro bloco de amostras representando um sinal de áudio ou ura sinal de imagem, e para o janelamento de um segundo bloco de amostras representando um sinal de áudio ou um sinal de imagem através do uso· de várias matrizes de elevação· (18, 22, 26) e subseqüentes operações de arredondamento (20, 24, 28) para se obter um primeiro bloco· de valores discretos e um segundo bloco· de valores discretos; e um aparato para se obter uma representação transformada do primeiro e o segundo blocos com valores de saida inteiros.
17. Método para a conversão de valores discretos em uma representação transformada com valores inteiros, caracterizado pelo fato de que os valores discretos possuem informações de áudio e/ou imagem, compreendendo as etapas de; processamento (102) de um primeiro bloco de valores discretos através do uso de uma primeira regra de transformação para se obter ura primeiro bloco de valores transformados; arredondamento (1045 do primeiro bloco de valores transformados para se obter um primeiro bloco de valores transformados arredondados; soma (106) do primeiro bloco de valores transformados arredondados com um segundo bloco de valores discretos para obter um segundo bloco de valores somados; processamento (108) do segundo bloco de valores somados através do uso de uma segunda regra de transformação para se obter um segundo bloco de valores transformados; arredondamento (110) do segundo bloco de valores transformados para se obter um segundo bloco de valores transformados arredondados; e subtração (112) do segundo bloco de valores transformados arredondados a partir do primeiro bloco de valores discretos para se obter um bloco de valores de saída inteiros da representação transformada.
18. Método de transformação para frente, de acordo· com a reivindicação 17, caracterizado por compreender as etapas de: janelamento (16, 18, 20, 22, 24, 26, 28) de um primeiro bloco de amostras representando um sinal de áudio ou um sinal de imagem, e janelamento de um segundo bloco de amostras representando um sinal de áudio ou um sinal de imagem através do uso· de várias matrizes de elevação (18, 22, 26) e subsequentes operações de arredondamento (20, 24, 28) para se obter um primeiro bloco de valores discretos e um segundo bloco de valores discretos; e método para se obter uma representação transformada do primeiro e segundo blocos com valores de saída inteiros,
19. Aparato para a conversão inversa de um bloco· de valores de saída inteiros e um segundo bloco de valores somados, os quais são uma representação transformada dos valores discretos para se obter o primeiro· e o segundo blocos de valores discretos, caracterizado pelo fato de que o bloco· de valores de saída inteiros e o· segundo bloco de valores somados são derivados do primeiro e segundo blocos de valores discretos, por processamento (102) de um primeiro blooo de valores discretos através do· uso da primeira regra de transformação para se obter um primeiro bloco de valores transformados, arredondamento {104) do primeiro bloco de valores transformados para se obter um primeiro bloco de valores transformados arredondados, soma (106) do primeiro bloco de valores transformados arredondados com um segundo bloco· de valores discretos para se obter o segundo bloco de valores somados, processamento (108) do segundo bloco de valores somados através do uso de uma segunda regra de transformação para se obter um segundo bloco de valores transformados, arredondamento (110) do segundo bloco de valores transformados para se obter um segundo bloco de valores transformados arredondados, e subtração (112) do segundo· bloco de valores transformados arredondados do primeiro bloco de valores discretos para se obter um bloco de valores de saída inteiros da representação transformada, compreendendo: um meio (130) para o processamento do segundo bloco de valores somados através do uso da segunda regra de transformação para se obter um primeiro bloco de valores de saída transformados; um meio (132) para o arredondamento do primeiro bloco de valores de saída transformados para se obter um primeiro bloco de valores transformados arredondados; um meio (134) para soma do primeiro bloco de valores de saída transformados arredondados com o bloco de valores de saída inteiros para se obter o· primeiro bloco de valores discretos; um meio (150) para o processamento do primeiro bloco de valores discretos através do uso da primeira regra de transformação para se obter um segundo bloco de valores transformados; um meio (152) para o· arredondamento do segundo bloco de valores transformados para se obter um bloco de valores transformados arredondados; e um meio (154) para a subtração do bloco de valores transformados arredondados do segundo bloco de valores somados para se obter o segundo bloco de valores discretos,
20. Aparato de acordo com a reivindicação 19, caracterizado pelo fato de que um bloco adicional de valores de saída inteiros da representação transformada é calculado a partir do segundo- bloco de valores somados pelo processamento (140) do- bloco de valores de saída inteiros através do uso de uma terceira regra de transformação para se obter um bloco de valores de saída transformados, pelo arredondamento (142) do bloco de valores de saída transformados para se obter um bloco· de valores de saída transformados arredondados, e pela soma (144) do bloco de valores de saída transformados arredondados coro o segundo bloco ou os valores somados para se obter o bloco adicional de valores de saída inteiros da representação transformada, o aparato compreendendo ainda: um meio (124) para o processamento do bloco de valores de saída inteiros através do uso da terceira regra de transformação para se obter ura primeiro· bloco de valores de saída transformados; um meio (126) para o arredondamento do primeiro bloco de valores de saída transformados para se obter um primeiro bloco de valores de saída transformados arredondados; e um meio para subtração (128) do primeiro bloco dos valores de saída transformados arredondados a partir do· bloco adicional de valores de saída para se obter o segundo bloco de valores somados.
21. Método para conversão inversa de um bloco de valores de saída inteiros e um segundo bloco de valores somados, os quais são uma representação transformada dos valores discretos, para obter um primeiro· e um segundo blocos de valores discretos, caracterizado pelo fato de que o bloco de valores de saída inteiros e o· segundo bloco de valores somados foram derivados do primeiro e do segundo blocos de valores discretos, através de processamento (102) de um primeiro bloco de valores discretos através do uso de uma primeira regra de transformação para se obter um primeiro bloco de valores transformados, arredondamento (104) do primeiro bloco de valores transformados para se obter um primeiro bloco de valores transformados arredondados, soma (106) do primeiro bloco de valores transformados arredondados com um segundo bloco de valores discretos para se obter um segundo bloco de valores somados, processamento (108) do segundo bloco de valores somados através do uso de uma segunda regra de transformação· para se obter um segundo bloco de valores transformados, arredondamento· (110) do segundo bloco de valores transformados para se obter um segundo bloco de valores transformados arredondados, e subtração (112) do segundo bloco de valores transformados arredondados a partir do primeiro bloco de valores discretos para se obter um bloco de valores de saída inteiros da representação transformada, compreendendo as etapas de: processamento (130) do segundo bloco de valores somados através do uso· da segunda regra de transformação para se obter um primeiro bloco de valores de saída transformados; arredondamento (132) do primeiro bloco de valores de saída transformados para se obter um primeiro bloco de valores transformados arredondados; soma (134) do primeiro bloco de valores de saída transformados arredondados com o bloco de valores de saída inteiros para se obter o primeiro bloco de valores discretos; processamento (150? do primeiro bloco de valores discretos através do uso· da primeira regra de transformação para se obter um segundo bloco de valores transformados; arredondamento (152) do segundo bloco de valores transformados para se obter um bloco de valores transformados arredondados; e subtração (154) do bloco de valores transformados arredondados a partir do segundo bloco de valores somados para se obter o segundo bloco de valores discretos.
22. Aparato de transformação para trás, de acordo com as reivindicações 19 ou 20 caracterizado por compreender ura meio para o janelamento inverso do primeiro e segundo· blocos de valores discretos através do uso de matrizes de elevação (18, 22, 26) e subsequentes operações de arredondamento (20, 24, 28) para se obter um primeiro e segundo blocos de valores originais representando amostras de áudio ou amostras de imagem.
23. Método de transformação para trás, de acordo com a reivindicação 21, caracterizado por compreender as etapas de: janelamento inverso· do primeiro e segundo blocos de valores discretos através do uso de matrizes de elevação· (18, 22, 26) e subseqüentes operações de arredondamento (20, 24, 28) para se obter um primeiro e segundo blocos de valores originais representando amostras de áudio ou amostras de imagem.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10331803A DE10331803A1 (de) | 2003-07-14 | 2003-07-14 | Vorrichtung und Verfahren zum Umsetzen in eine transformierte Darstellung oder zum inversen Umsetzen der transformierten Darstellung |
PCT/EP2004/007326 WO2005006624A2 (de) | 2003-07-14 | 2004-07-05 | Vorrichtung und verfahren zum umsetzen in eine transformierte darstellung oder zum inversen umsetzen der transformierten darstellung |
Publications (2)
Publication Number | Publication Date |
---|---|
BRPI0412166A BRPI0412166A (pt) | 2006-08-22 |
BRPI0412166B1 true BRPI0412166B1 (pt) | 2017-06-06 |
Family
ID=34041838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI0412166A BRPI0412166B1 (pt) | 2003-07-14 | 2004-07-05 | aparato e método para a conversão em uma representação transformada ou para a conversão inversa da representação transformada |
Country Status (15)
Country | Link |
---|---|
US (1) | US8195730B2 (pt) |
EP (1) | EP1609084B1 (pt) |
JP (1) | JP4398979B2 (pt) |
KR (1) | KR100776235B1 (pt) |
CN (1) | CN100416553C (pt) |
AT (1) | ATE339728T1 (pt) |
AU (1) | AU2004300713B2 (pt) |
BR (1) | BRPI0412166B1 (pt) |
CA (1) | CA2532288C (pt) |
DE (2) | DE10331803A1 (pt) |
ES (1) | ES2273268T3 (pt) |
HK (1) | HK1085033A1 (pt) |
MX (1) | MXPA06000528A (pt) |
PT (1) | PT1609084E (pt) |
WO (1) | WO2005006624A2 (pt) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070276894A1 (en) * | 2003-09-29 | 2007-11-29 | Agency For Science, Technology And Research | Process And Device For Determining A Transforming Element For A Given Transformation Function, Method And Device For Transforming A Digital Signal From The Time Domain Into The Frequency Domain And Vice Versa And Computer Readable Medium |
DE10345995B4 (de) | 2003-10-02 | 2005-07-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zum Verarbeiten eines Signals mit einer Sequenz von diskreten Werten |
US20090099844A1 (en) * | 2007-10-16 | 2009-04-16 | Qualcomm Incorporated | Efficient implementation of analysis and synthesis filterbanks for mpeg aac and mpeg aac eld encoders/decoders |
EP2063417A1 (en) * | 2007-11-23 | 2009-05-27 | Deutsche Thomson OHG | Rounding noise shaping for integer transform based encoding and decoding |
KR101067531B1 (ko) | 2009-08-27 | 2011-09-27 | 성균관대학교산학협력단 | 양방향 정수 변환 장치 및 방법 |
US9008811B2 (en) | 2010-09-17 | 2015-04-14 | Xiph.org Foundation | Methods and systems for adaptive time-frequency resolution in digital data coding |
ES2534972T3 (es) | 2011-02-14 | 2015-04-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Predicción lineal basada en esquema de codificación utilizando conformación de ruido de dominio espectral |
SG192746A1 (en) | 2011-02-14 | 2013-09-30 | Fraunhofer Ges Forschung | Apparatus and method for processing a decoded audio signal in a spectral domain |
AU2012217216B2 (en) | 2011-02-14 | 2015-09-17 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for coding a portion of an audio signal using a transient detection and a quality result |
PL3471092T3 (pl) | 2011-02-14 | 2020-12-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Dekodowanie pozycji impulsów ścieżek sygnału audio |
CN102959620B (zh) * | 2011-02-14 | 2015-05-13 | 弗兰霍菲尔运输应用研究公司 | 利用重迭变换的信息信号表示 |
WO2012122297A1 (en) | 2011-03-07 | 2012-09-13 | Xiph. Org. | Methods and systems for avoiding partial collapse in multi-block audio coding |
US9009036B2 (en) | 2011-03-07 | 2015-04-14 | Xiph.org Foundation | Methods and systems for bit allocation and partitioning in gain-shape vector quantization for audio coding |
US8838442B2 (en) * | 2011-03-07 | 2014-09-16 | Xiph.org Foundation | Method and system for two-step spreading for tonal artifact avoidance in audio coding |
US10860683B2 (en) | 2012-10-25 | 2020-12-08 | The Research Foundation For The State University Of New York | Pattern change discovery between high dimensional data sets |
US10089319B2 (en) * | 2015-02-20 | 2018-10-02 | International Business Machines Corporation | Policy-based, multi-scheme data reduction for computer memory |
US10448053B2 (en) * | 2016-02-15 | 2019-10-15 | Qualcomm Incorporated | Multi-pass non-separable transforms for video coding |
WO2018044125A1 (ko) * | 2016-09-01 | 2018-03-08 | 엘지전자(주) | 레이어드 기븐스 변환을 이용하여 변환을 수행하는 방법 및 장치 |
KR101916525B1 (ko) | 2016-09-30 | 2018-11-07 | 연세대학교 산학협력단 | 필터 뱅크 멀티캐리어 시스템 및 필터링 방법 |
EP3616196A4 (en) * | 2017-04-28 | 2021-01-20 | DTS, Inc. | AUDIO ENCODER WINDOW AND TRANSFORMATION IMPLEMENTATIONS |
TWI777907B (zh) * | 2017-07-13 | 2022-09-11 | 美商松下電器(美國)知識產權公司 | 編碼裝置、編碼方法、解碼裝置、解碼方法及電腦可讀取之非暫時性媒體 |
CN108200436B (zh) * | 2017-12-29 | 2019-06-18 | 华中科技大学 | 一种面向线列扫描红外成像非均匀性残差的无损压缩方法 |
CN108986794B (zh) * | 2018-09-19 | 2023-02-28 | 河海大学 | 一种基于幂函数频率变换的说话人补偿方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5473744A (en) * | 1992-09-28 | 1995-12-05 | Optical Magnetic Imaging Corporation | Computer-assisted interactive method and apparatus for making a multi-media presentation |
EP0624032B1 (en) * | 1993-05-07 | 2000-07-26 | Lg Electronics Inc. | Video format conversion apparatus and method |
JP3291948B2 (ja) | 1994-12-15 | 2002-06-17 | ソニー株式会社 | 高能率符号化方法及び装置、並びに伝送媒体 |
EP0951184A4 (en) * | 1997-11-05 | 2006-08-30 | Sony Corp | METHOD FOR CONVERTING DIGITAL SIGNALS AND APPARATUS FOR CONVERTING DIGITAL SIGNALS |
US6360204B1 (en) | 1998-04-24 | 2002-03-19 | Sarnoff Corporation | Method and apparatus for implementing rounding in decoding an audio signal |
US6263019B1 (en) * | 1998-10-09 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Variable rate MPEG-2 video syntax processor |
KR100289621B1 (ko) * | 1998-12-29 | 2001-05-02 | 이계철 | 비디오 인코더의 변환 및 역변환 부호화 장치 및 그 방법 |
US20050143981A1 (en) | 2000-06-06 | 2005-06-30 | Yukio Koyanagi | Compressing method and apparatus, expanding method and apparatus, compression and expansion system, recorded medium, program |
JP2002311997A (ja) | 2001-04-16 | 2002-10-25 | Matsushita Electric Ind Co Ltd | オーディオ信号符号化装置 |
DE10129240A1 (de) * | 2001-06-18 | 2003-01-02 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zum Verarbeiten von zeitdiskreten Audio-Abtastwerten |
US20070276894A1 (en) * | 2003-09-29 | 2007-11-29 | Agency For Science, Technology And Research | Process And Device For Determining A Transforming Element For A Given Transformation Function, Method And Device For Transforming A Digital Signal From The Time Domain Into The Frequency Domain And Vice Versa And Computer Readable Medium |
-
2003
- 2003-07-14 DE DE10331803A patent/DE10331803A1/de not_active Withdrawn
-
2004
- 2004-07-05 JP JP2006519811A patent/JP4398979B2/ja not_active Expired - Lifetime
- 2004-07-05 BR BRPI0412166A patent/BRPI0412166B1/pt active IP Right Grant
- 2004-07-05 AU AU2004300713A patent/AU2004300713B2/en not_active Expired
- 2004-07-05 CN CNB2004800166016A patent/CN100416553C/zh not_active Expired - Lifetime
- 2004-07-05 WO PCT/EP2004/007326 patent/WO2005006624A2/de active IP Right Grant
- 2004-07-05 MX MXPA06000528A patent/MXPA06000528A/es active IP Right Grant
- 2004-07-05 AT AT04740658T patent/ATE339728T1/de active
- 2004-07-05 KR KR1020067000950A patent/KR100776235B1/ko active IP Right Grant
- 2004-07-05 EP EP04740658A patent/EP1609084B1/de not_active Expired - Lifetime
- 2004-07-05 PT PT04740658T patent/PT1609084E/pt unknown
- 2004-07-05 ES ES04740658T patent/ES2273268T3/es not_active Expired - Lifetime
- 2004-07-05 DE DE502004001490T patent/DE502004001490D1/de not_active Expired - Lifetime
- 2004-07-05 CA CA2532288A patent/CA2532288C/en not_active Expired - Lifetime
-
2006
- 2006-01-13 US US11/331,551 patent/US8195730B2/en active Active
- 2006-06-27 HK HK06107235A patent/HK1085033A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
ATE339728T1 (de) | 2006-10-15 |
CN1806239A (zh) | 2006-07-19 |
JP4398979B2 (ja) | 2010-01-13 |
CA2532288A1 (en) | 2005-01-20 |
EP1609084B1 (de) | 2006-09-13 |
AU2004300713A1 (en) | 2005-01-20 |
PT1609084E (pt) | 2007-01-31 |
ES2273268T3 (es) | 2007-05-01 |
DE10331803A1 (de) | 2005-02-17 |
CA2532288C (en) | 2012-10-02 |
US20060115171A1 (en) | 2006-06-01 |
WO2005006624A3 (de) | 2005-02-10 |
DE502004001490D1 (de) | 2006-10-26 |
MXPA06000528A (es) | 2006-03-30 |
AU2004300713B2 (en) | 2007-11-08 |
HK1085033A1 (en) | 2006-08-11 |
BRPI0412166A (pt) | 2006-08-22 |
EP1609084A2 (de) | 2005-12-28 |
KR20060034293A (ko) | 2006-04-21 |
CN100416553C (zh) | 2008-09-03 |
KR100776235B1 (ko) | 2007-11-16 |
JP2009513993A (ja) | 2009-04-02 |
US8195730B2 (en) | 2012-06-05 |
WO2005006624A2 (de) | 2005-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BRPI0412166B1 (pt) | aparato e método para a conversão em uma representação transformada ou para a conversão inversa da representação transformada | |
RU2691231C2 (ru) | Декодер для декодирования кодированного аудиосигнала и кодер для кодирования аудиосигнала | |
JP5269908B2 (ja) | 5点dct−ii、dct−iv、およびdst−ivの計算のための高速アルゴリズム、ならびにアーキテクチャ | |
US7275036B2 (en) | Apparatus and method for coding a time-discrete audio signal to obtain coded audio data and for decoding coded audio data | |
KR100778349B1 (ko) | 이산값의 시퀀스를 갖는 신호 처리 장치 및 방법 | |
US7512539B2 (en) | Method and device for processing time-discrete audio sampled values | |
RU2323469C2 (ru) | Устройство и способ для обработки, по меньшей мере, двух входных значений | |
RU2719285C1 (ru) | Уменьшение наложения спектров во временной области для неравномерных гребенок фильтров, которые используют спектральный анализ с последующим частичным синтезом | |
US9257129B2 (en) | Orthogonal transform apparatus, orthogonal transform method, orthogonal transform computer program, and audio decoding apparatus | |
EP2784776A1 (en) | Orthogonal transform apparatus, orthogonal transform method, orthogonal transform computer program, and audio decoding apparatus | |
Britanak et al. | Perfect Reconstruction Cosine/Sine-Modulated Filter Banks in the Dolby Digital (Plus) AC-3 Audio Coding Standards | |
Britanak et al. | MDCT/MDST, MLT, ELT, and MCLT Filter Banks: Definitions, General Properties, and Matrix Representations | |
AU2002358578A1 (en) | Device and method for encoding a time-discrete audio signal and device and method for decoding coded audio data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B07A | Application suspended after technical examination (opinion) [chapter 7.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] | ||
B15K | Others concerning applications: alteration of classification |
Ipc: H04N 19/60 (2014.01), G06F 17/14 (2006.01), G10L 1 |