BR112015019270B1 - aparelho e método para criar um sinal de áudio ou de imagem codificado na presença de transientes, aparelho e método para descodificar um sinal de áudio ou de imagem codificado na presença de transientes - Google Patents

aparelho e método para criar um sinal de áudio ou de imagem codificado na presença de transientes, aparelho e método para descodificar um sinal de áudio ou de imagem codificado na presença de transientes Download PDF

Info

Publication number
BR112015019270B1
BR112015019270B1 BR112015019270-0A BR112015019270A BR112015019270B1 BR 112015019270 B1 BR112015019270 B1 BR 112015019270B1 BR 112015019270 A BR112015019270 A BR 112015019270A BR 112015019270 B1 BR112015019270 B1 BR 112015019270B1
Authority
BR
Brazil
Prior art keywords
window
frame
function
overlap
block
Prior art date
Application number
BR112015019270-0A
Other languages
English (en)
Other versions
BR112015019270A8 (pt
BR112015019270A2 (pt
Inventor
Christian Helmrich
Jérémie Lecomte
Goran Markovic
Markus Schnell
Bernd Edler
Stefan REUSCHL
Original Assignee
Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. filed Critical Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Publication of BR112015019270A2 publication Critical patent/BR112015019270A2/pt
Publication of BR112015019270A8 publication Critical patent/BR112015019270A8/pt
Publication of BR112015019270B1 publication Critical patent/BR112015019270B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • G10L19/025Detection of transients or attacks for time/frequency resolution switching
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3002Conversion to or from differential modulation
    • H03M7/3044Conversion to or from differential modulation with several bits only, i.e. the difference between successive samples being coded by more than one bit, e.g. differential pulse code modulation [DPCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

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

Abstract

APARELHO E MÉTODO PARA CRIAR UM SINAL CODIFICADO OU PARA DESCODIFICAR UM SINAL DE ÁUDIO CODIFICADO USANDO UMA PARTE DE SOBREPOSIÇÃO MÚLTIPLA. Aparelho para criar um sinal codificado, que compreende: um controlador da sequência de janelas (808) para criar uma informação da sequência de janelas (809) para gerir janelas de um sinal de áudio ou imagem, indicando a informação da sequência de janelas uma primeira janela (1500) para criar uma primeira frame de valores espectrais, uma segunda função da janela (1502) e pelo menos uma terceira função da janela (1503) para criar uma segunda frame de valores espectrais, em que a primeira função da janela (1500), a segunda função da janela (1502) e a ou as terceiras funções da janela se sobrepõem dentro de uma zona de sobreposição múltipla (1300); um préprocessador (802) para gerir janelas (902) de um segundo bloco de amostras correspondentes à segunda função da janela e a pelo menos uma terceira função da janela usando uma função auxiliar da janela (1100) para obter um segundo bloco de amostras em janela, e para pré-processar (904) o segundo bloco de amostras em janela usando uma operação de dobrar de uma parte do segundo bloco que se sobrepõe com um primeiro bloco na parte de sobreposição múltipla (1300) para obter (...).

Description

APARELHO E MÉTODO PARA CRIAR UM SINAL DE ÁUDIO OU DE IMAGEM CODIFICADO NA PRESENÇA DE TRANSIENTES, APARELHO E MÉTODO PARA DESCODIFICAR UM SINAL DE ÁUDIO OU DE IMAGEM CODIFICADO NA PRESENÇA DE TRANSIENTES Especificação
[001] A presente invenção refere-se ao processamento de sinais de áudio ou de imagem e, em particular, à codificação ou descodificação de sinais de áudio ou de imagem na presença de transientes.
[002] Os esquemas contemporâneos de codificação de voz/áudio do domínio da frequência baseados nos FFTs de sobreposição ou a transformação de cosseno discreto modificado (MDCT) oferecem algum grau de adaptação às características de sinal não estacionário. Os codecs generalistas padronizados em MPEG, nomeadamente MPEG-1 Camada 3, mais conhecido por MP3, MPEG-4 (HE-)AAC [1], e mais recentemente, MPEG-0 xHE-AAC (USAC), assim como, o codec Opus/Celt especificado pelo IETF [2], permitem a codificação de uma frame usando um de pelo menos dois comprimentos de transformação diferentes - uma transformação longa do comprimento M para passagens de sinal estacionárias, ou 8 transformações curtas do comprimento M/8 cada. No caso dos codecs MPEG, mudar das transformações compridas para curtas e de curtas para longas (também conhecida por mudança de bloco) requer a utilização de transformações de transição com janelas assimétricas, nomeadamente uma janela de arranque e uma janela de paragem, respetivamente. Estas formas de transformação, juntamente com outras conhecidas formas da técnica anterior, são apresentadas na Figura 16. Note-se que a inclinação de sobreposição linear é meramente ilustrativa e varia na forma exata. O padrão AAC [1] e a seção 6 de [3] fornecem possíveis formas de janela.
[003] Tendo em conta que a frame que chega deve ser codificada com transformações curtas por um codificador MPEG, a frame atual tem de ser codificada com uma transformação de transição inicial, é evidente que um codificador implementado de acordo com um dos padrões MPEG acima mencionados requer pelo menos um comprimento de frame de antecipação. Em aplicações de comunicação de pouco atraso, no entanto, é desejável minimizar ou até evitar esta antecipação adicional. Com esta finalidade, foram propostas duas modificações ao paradigma de codificação generalista. Uma, que foi adotada por ex. em Celt [2] é reduzir a sobreposição da longa transformação para a da transformação curta, de modo a poder evitar janelas de transição assimétricas. A outra modificação, que é usada por ex. nos esquemas de codificação AAC de pouco Atraso (Melhorado) MPEG-4, é não permitir a mudança para transformações mais curtas e, em vez disso, basear-se em uma ferramenta de codificação de Modelação do Ruído Temporal (TNS) [4] que opera sobre os coeficientes de longa transformação para minimizar a propagação temporal de erro de codificação à volta dos transientes.
[004] Além disso, tal como xHE-AAC, o AAC de Pouco Atraso permite a utilização de duas larguras de sobreposição de frames - a sobreposição prédefinida de 50% para a entrada estacionária ou uma sobreposição reduzida (similar à sobreposição curta de transformações de transição) para sinais não estacionários. A sobreposição reduzida efetivamente limita a extensão de tempo de uma transformação e, por conseguinte, o seu erro de codificação no caso da quantização do coeficiente.
[005] A patente norte-americana 2008/0140428A 1 atribuída à Samsung Electronics Co., assim como, as patentes norte-americanos 5502789 e 5819214 atribuídas à Sony Corp., apresentam unidades de determinação do tamanho da janela ou da transformação adaptativas do sinal. No entanto, as unidades transformadoras controladas por essas unidades de determinação do tamanho da janela ou da transformação operam sobre valores de subbanda QMF ou LOT (implicando que os sistemas descritos empregam ambos bancos de filtros ou transformações em cascata), enquanto no presente caso se trabalha diretamente sobre o sinal de entrada de banda cheia do domínio do tempo. Para além disso, o documento 2008/0140428A 1 não descreve detalhes sobre a forma ou o controle da sobreposição de janelas, e no documento 5819214 as formas de sobreposição seguem – isto é, são o resultado da – produção da unidade de determinação do tamanho de transformação, que é o oposto do que é proposto por um modelo privilegiado da presente invenção.
[006] A patente norte-americana 2010/0076754A1 atribuída à France Telecom segue a mesma motivação da presente invenção, nomeadamente ser capaz de mudar o comprimento de transformação em cenários de codificação de comunicação para melhorar a codificação de segmentos do sinal do transiente, e fazê-lo sem a antecipação extra do codificador. No entanto, enquanto esse documento revela que o objetivo de pouco atraso é conseguido evitando janelas de transição do comprimento de transformação e processando posteriormente o sinal reconstruído no descodificador (desvantajosamente através da amplificação de peças do sinal descodificado e, por conseguinte, do erro de codificação), a presente invenção propõe uma simples modificação da janela de transição de um sistema da técnica anterior que será introduzida mais abaixo, de modo a poder minimizar a antecipação adicional do codificador e a evitar o pós-processamento do descodificador especial (arriscado).
[007] A transformação de transição, à qual deve ser aplicada uma modificação inventiva, é a janela inicial descrita em duas variantes na patente norte-americana 5848391 atribuída á Fraunhofer-Gesellschaft e.V. e Dolby Laboratories Licensing Corp., assim como, em uma forma ligeiramente diferente, na patente norte-americana 2006/0122825A 1 atribuída à Samsung Electronics Co. A Figura 16 mostra estas janelas iniciais e revela que a diferença entre as janelas de Fraunhofer/Dolby e a janela da Samsung é a presença de um segmento de não sobreposição, isto é, em uma zona da janela que tem um valor máximo constante que não pertence a nenhuma inclinação de sobreposição. As janelas de Fraunhofer/Dolby exibem uma "peça de não sobreposição com um comprimento" que as janelas da Samsung não têm. Conclui-se que se pode realizar um codificador com a menor quantidade de antecipação adicional mas usando a mudança de transformação da técnica anterior através da abordagem da janela de transição da Samsung. Com essas transformações, basta uma antecipação igual à largura de sobreposição entre as transformações curtas para mudar completamente das transformações longas para as curtas o tempo suficiente antes de um transiente de sinal.
[008] Além disso, a técnica anterior pode ser encontrada no documento WO 90/09063 ou “Codificação de sinais de áudio com funções de transformação do bloco de sobreposição e funções de janelas adaptativas”, frequência, volume 43, setembro de 1989, página 2052 a 2056 ou no Documento da Convenção AES 4929, “Codificação de Áudio de Pouco Atraso MPEG-4 baseada no Codec AAC”, E. Allamanche, et al., 106 Convenção, 1999.
[009] Não obstante, dependendo do comprimento da transformação curta, a antecipação pode permanecer bastante grande e não deve ser evitada. A Figura 17 ilustra o desempenho da mudança de bloco durante a pior situação de entrada, nomeadamente a presença de um transiente súbito no início da zona antecipada, que por sua vez começa no fim da inclinação longa, isto é, a zona de sobreposição entre as frames. De acordo com as abordagens da técnica anterior, pelo menos um dos dois transientes apresentados chega à transformação de transição. Em um sistema de codificação com perdas que utiliza um codificador sem antecipação adicional - um codificador que não "vê o transiente a chegar" - esta condição causa a propagação temporal do erro de codificação até ao início da inclinação longa e, mesmo quando usa TNS, o ruído de pré-eco tem probabilidade de ser ouvido no sinal descodificado.
[010] As duas alternativas de antecipação previamente mencionadas têm as suas desvantagens. Reduzir a sobreposição de transformação longa em um fator até 8, por um lado, como é feito no codificador Celt, limita severamente a eficiência (isto é, o ganho de codificação, a compactação espectral) sobre o material de entrada estacionário, sobretudo altamente tonal. Por outro lado, proibir transformações curtas como em AAC de Pouco Atraso (Melhorado), reduz o desempenho do codec em transientes fortes com durações muito inferiores ao comprimento da frame, levando frequentemente ao ruído pré-eco ou pós-eco audível mesmo ao usar TNS.
[011] Deste modo, os procedimentos de determinação da sequência de janelas da técnica anterior estão sub-otimizados relativamente à flexibilidade devido aos comprimentos restritos das janelas, estão sub-otimizados relativamente ao atraso exigido devido aos períodos mínimos de antecipação de transiente exigidos, estão sub-otimizados relativamente à qualidade de áudio devido aos pré-ecos e pós-ecos, estão sub-otimizados relativamente à eficiência devido ao pré-processamento adicional potencialmente necessário usando funcionalidades adicionais para além dos procedimentos de sistemas de janelas com certas janelas ou estão sub-otimizados relativamente à flexibilidade e eficiência devido à potencial necessidade de mudar uma trama de frames/blocos na presença de um transiente.
[012] Um objetivo da presente invenção é providenciar um conceito melhorado de codificação/descodificação de áudio que proporciona um melhor desempenho relativamente a pelo menos uma das desvantagens da técnica anterior.
[013] Este objetivo é conseguido por um aparelho para codificar um sinal de áudio ou de imagem da reivindicação 1, um aparelho de descodificação de um sinal de áudio ou de imagem da reivindicação 17, um método de codificação de um sinal de áudio ou de imagem da reivindicação 32, um método de descodificação de um sinal de áudio ou de imagem da reivindicação 33 ou um programa de computador da reivindicação 34.
[014] Os aspectos da presente invenção baseiam-se na descoberta de que, para que um codec de áudio ou de imagem de pouco atraso possa abordar a qualidade de codificação dos codecs generalistas, é útil manter uma percentagem de sobreposição alta entre transformações longas durante entradas de sinal estacionárias e permitir a mudança imediata para sobreposições e transformações mais curtas em partes de sinal de áudio ou de imagem à volta de não estacionaridades do sinal. Além disso, é desejável permitir uma flexibilidade um pouco maior do que oferecer apenas uma escolha binária relativamente à largura de sobreposição e, adicionalmente ou em alternativa relativamente aos comprimentos de transformação, de modo a que a largura ou os comprimentos de sobreposição da ou das transformações dentro de uma frame possa ser adaptada com precisão com base na localização de um possível transiente dento da zona temporal da frame para minimizar pré-ecos ou outros artefatos.
[015] Especificamente, um detector de localização de transientes está configurado para identificar uma localização de um transiente dentro de uma zona de antecipação de transiente de uma frame e, com base na localização do transiente dentro da frame, é selecionada uma janela específica a partir de um grupo de pelo menos três janelas, em que estas três janelas são diferentes relativamente aos seus comprimentos de sobreposição com correspondentes janelas adjacentes. Por conseguinte, a primeira janela tem um comprimento de sobreposição maior do que a segunda janela, e a segunda janela tem um comprimento de sobreposição maior do que o comprimento de sobreposição da terceira janela, e a terceira janela pode, em alternativa, também ter uma sobreposição zero, isto é, sem sobreposição. A janela específica é selecionada com base na localização do transiente de modo a que uma de duas janelas de sobreposição de tempo-adjacente tem uns primeiros coeficientes de janelas na localização do transiente e a outra das duas janelas de sobreposição tempoadjacente tem uns segundos coeficientes de janelas na localização do transiente, em que os segundos coeficientes são pelo menos nove vezes maiores do que os primeiros coeficientes. Deste modo, assegura-se que a localização do transiente está, relativamente à primeira janela, suficientemente suprimida e que o transiente está, relativamente à segunda janela, suficientemente captado. Por outras palavras, e preferencialmente, a janela anterior já está em valores próximos de zero na localização do transiente onde o transiente foi detectado e a segunda janela tem coeficientes de janela próximos de um nesta zona, de modo a que, durante pelo menos uma parte do transiente, o transiente é suprimido na janela anterior e não é suprimido na janela posterior ou seguinte.
[016] Em uma implementação, os comprimentos de sobreposição são diferentes por fatores de número inteiro, de modo a que o segundo comprimento de sobreposição seja, por exemplo, igual a metade do terceiro comprimento de sobreposição e o terceiro comprimento de sobreposição seja igual a metade do segundo comprimento de sobreposição ou seja diferente do segundo comprimento de sobreposição por um fator diferente mas maior do que ou igual a pelo menos 64 amostras ou maior do que ou igual a pelo menos 32 amostras ou maior ou igual a pelo menos mesmo 16 amostras de áudio ou de imagem.
[017] A seleção da janela derivada da localização do transiente é transmitida juntamente com as frames do sinal de áudio ou de imagem, de modo a que um descodificador possa selecionar as correspondentes janelas de síntese em linha com a seleção do codificador das janelas de análise, garantindo que o codificador e o descodificar são sincronizados por toda a operação de codificação/descodificação.
[018] Em uma implementação, um gerenciador de janelas controlável, um conversor, um detector da localização de transientes e um controlador formam um aparelho para codificar, e o conversor aplica qualquer uma das conhecidas transformações de introdução de distorção, tais como uma MDCT (transformação do cosseno discreto modificado), uma DST (transformação do seno discreto modificado) ou qualquer outra transformação similar. No lado do descodificador, um processador coopera com um conversor controlável para converter uma sequência de blocos de valores espectrais em uma representação do domínio do tempo usando um processamento de sobreposição-adição de acordo com as sequências de janelas indicadas por uma informação de janelas recebida pelo descodificador.
[019] Dependendo da implementação, pode ser implementada uma mudança do comprimento de transformação adicionalmente à seleção da sobreposição de transformação, mais uma vez com base na localização do transiente dentro da frame. Ao implementar uma seção de sobreposição múltipla, na qual pelo menos três janelas se sobrepõem umas às outras, é realizado um conceito de codec de muito pouco atraso, que mais uma vez reduz substancialmente o atraso de antecipação do transiente exigido relativamente a conceitos anteriores. Em outra implementação, é preferível começar por selecionar a sobreposição e depois decidir o comprimento de transformação para determinar um código de sobreposição para cada frame. Em alternativa, a decisão de mudar o comprimento de transformação pode ser tomada independentemente da decisão da largura de sobreposição e, com base nestas duas decisões, é determinado um código de sobreposição. Com base no código de sobreposição para uma frame atual e no código de sobreposição de uma frame anterior, é selecionada a sequência de janelas para um transiente específico, com base na qual um codificador e um descodificador operam em sincronia entre si.
[020] Em outro aspecto, um controlador da sequência de janelas, um préprocessador e um conversor de espectro constituem em conjunto um aparelho para criar um sinal codificado, em que três janelas têm uma parte de sobreposição múltipla. Esta parte de sobreposição múltipla, na qual não apenas duas janelas, tal como na técnica anterior, mas três janelas se sobrepõem umas às outras, permite um conceito de muito pouco atraso pelo fato de o atraso necessário e exigido ser ainda mais reduzido para a antecipação do transiente. Um correspondente descodificador é formado por um processador de descodificadores, um conversor de tempo e um pós-processador. O pósprocessador e o pré-processador realizam operações adicionais de sistemas de janelas, usando a mesma janela auxiliar no lado do codificador e no lado do descodificador, de modo a poder obter uma implementação eficiente particularmente em dispositivos móveis ou dispositivos de baixo custo, onde um armazenamento ROM ou RAM exigido deve ser o mais pequeno possível.
[021] Os modelos privilegiados baseiam-se em uma sequência específica de janelas e em uma interação específica de janelas com diferentes comprimentos, de modo a "colocar" uma janela de comprimento curto no transiente para evitar pré-ecos ou pós-ecos compridos. Para assegurar que a parte de sobreposição múltipla não resulte em artefatos de áudio ou de imagem, o pré-processador no lado do codificador realiza uma operação de gerir janelas, usando a função auxiliar da janela e uma operação de pré-processamento, usando uma operação de dobrar para obter uma parte de sobreposição múltipla modificada, que é depois transformada no domínio espectral usando uma transformação de introdução de distorção. No lado do descodificador, é configurado um correspondente pós-processador para realizar uma operação de dobrar depois de correspondentes transformações para a representação do tempo e, depois da operação de desdobrar, uma gestão de janelas usando a função auxiliar da janela e é feita uma adição final de sobreposição com um bloco precedente de amostras originárias de uma operação de janelas com uma janela longa.
[022] Em um modelo onde é selecionada uma sobreposição de transformação, obtém-se uma maior qualidade de áudio ou de imagem.
[023] Ao contrário de existentes sistemas de codificação, que empregam apenas uma escolha binária da largura da sobreposição de transformação (grande/máximo ou pequena), o modelo propõe um conjunto de três larguras de sobreposição, a partir do qual um codificador pode escolher uma base por frame (ou opcionalmente, uma por transformação): sobreposição máxima, meia sobreposição ou sobreposição mínima. A sobreposição máxima pode ser igual ao comprimento da frame, tal como para transformações lingas em AAC, isto é, 50% de sobreposição, mas também pode ser igual a metade do comprimento da frame, isto é, 33% de sobreposição, ou menos, tal como será descrito um modelo preferido. Correspondentemente, a sobreposição mínima pode indicar uma largura de sobreposição de zero, isto é, sem sobreposição, mas também pode representar uma sobreposição superior a zero de um número muito pequeno de amostras de tempo ou milésimos de segundos, tal como esse modelo privilegiado vai demonstrar. Por fim, a meia sobreposição pode ser, mas não tem de ser necessariamente, metade da sobreposição máxima.
[024] Em particular, de acordo com um aspecto da presente invenção, é definida uma unidade de determinação da largura de sobreposição que seleciona para cada frame (ou opcionalmente, para cada transformação dentro de uma frame) uma das três possíveis larguras de sobreposição. Mais precisamente, essa unidade de determinação da largura de sobreposição tem, como uma entrada, a saída de uma unidade de detecção de transientes para identificar com precisão suficiente a posição de um transiente dentro da frame atual (ou opcionalmente, dentro de uma transformação na frame atual) e para derivar uma largura de sobreposição de modo a que pelo menos um dos dois objetivos é conseguido:
[025] - A largura é escolhida de modo a que apenas uma das transformações de sobreposição contenha o transiente.
[026] - Os pseudo-transientes são fortemente suprimidos devido à modelação TNS de distorção do tempo do erro de codificação.
[027] Por outras palavras, a largura da sobreposição é determinada com o objetivo de prevenir a distorção de pré-eco ou pós-eco à volta de um transiente perceptualmente codificado localizado na frame definida. Note-se que é possível um certo grau de liberdade relativamente aos meios de determinação da localização exata do transiente. O índice de tempo ou sub-bloco que designa uma localização do transiente pode igualar o início (arranque) dessa localização do transiente, como em um modelo privilegiado, mas também pode ser a localização da energia ou amplitude máxima, ou o centro da energia, do transiente.
[028] Além disso, ao contrário dos esquemas de codificação da técnica anterior, que derivam as sobreposições instantâneas de inter-transformação a partir da seleção definida dos comprimentos de transformação para um par de frames (ou seja, a largura da sobreposição segue a saída de uma unidade de determinação do tamanho de transformação), de acordo com outro aspecto da presente invenção um sistema de codificação pode, em certas condições que serão analisadas em baixo em um modelo privilegiado, controlar ou derivar o(s) comprimentos(s) de transformação que será/serão usado(s) em uma frame particular usando a largura de sobreposição atribuída a essa frame e, opcionalmente, a largura de sobreposição da frame anterior (isto é, o tamanho de transformação segue os dados da unidade de determinação do tamanho de sobreposição).
[029] Em outro modelo, no qual é usada uma parte de sobreposição múltipla ou no qual é aplicada uma mudança do comprimento de transformação, obtémse um conceito particularmente de pouco atraso.
[030] Um melhoramento dos esquemas de mudança da técnica anterior é uma modificação vantajosa às transformações de transição da Figura 16, que permite que a antecipação do codificador adicional exigida para uma operação de qualidade estável seja reduzida em metade durante as não estacionaridades do sinal. Tal como discutido em cima, as janelas de arranque propostas por Fraunhofer/Dolby ou pela Samsung caracterizam-se pela presença ou ausência, respetivamente, de uma "peça de não sobreposição com um comprimento". O modelo vai ainda mais longe e permite que as inclinações da sobreposição esquerda e direita da janela de transição se estendam umas nas outras. Por outras palavras, a transformação de transição modificada exibe uma zona de "sobreposição dupla" do comprimento não zero, no qual se sobrepõe tanto com a transformação longa da frame precedente como com a seguinte transformação curta. A forma resultante da transformação de transição inventiva é ilustrada na Figura 13. Em comparação com a janela de transição da Samsung apresentada na Figura 17, fica claro que ao permitir uma zona de "sobreposição dupla" na transformação, a inclinação de sobreposição curta na extremidade direita da transformação pode ser deslocada para a esquerda em - e, assim, a antecipação do codificador exigida pode ser reduzida em - metade da largura da sobreposição de transformação curta. O comprimento reduzido dessa janela de transição modificada tem três vantagens cruciais, que facilitam a implementação, especialmente em dispositivos móveis:
[031] O núcleo de transformação, isto é, o comprimento do vetor de coeficiente resultante do tempo volvido / transformação de frequência (preferencialmente o MDCT), é exatamente metade da largura da zona de sobreposição entre duas transformações longas. Tendo em conta que essa largura de sobreposição longa é habitualmente igual ao comprimento da frame ou metade do comprimento da frame, isto implica que a janela de transição inventiva e as subsequentes janelas curtas se adaptem perfeitamente à grelha da frame e que todos os tamanhos de transformação do codec resultante estão relacionados por um fator de potência de dois números inteiros, como se pode ver na Figura 13.
[032] - Tanto as localizações do transiente apresentadas na Figura 17 e novamente na Figura 13 estão fora da transformação de transição, de modo a poder restringir-se uma persistência temporal do erro de codificação devido aos transientes dentro da extensão das duas primeiras janelas curtas que seguem a transformação. Por conseguinte, ao contrário dos esquemas de Fraunhofer/Dolby e Samsung da técnica anterior, é pouco provável que o ruído de pré-eco audível à volta dos transientes ocorra quando usar a abordagem de mudança do bloco da invenção da Figura 13.
[033] - Tanto o codificador como o descodificador podem usar exatamente as mesmas janelas para as transformações de encaminhamento e de inversão. Em um dispositivo de comunicação que realiza tanto a codificação como a descodificação, apenas um conjunto de dados de janelas tem de ser guardado na ROM. Pode ser ainda evitado o pré-processamento e o pós-processamento especial do sinal, o que exigiria um programa ROM e/ou RAM adicional.
[034] Tradicionalmente, as janelas de transição com um segmento de "sobreposição dupla", tal como na presente invenção, não foram usadas na codificação de voz ou áudio ou imagem, muito provavelmente porque se considerou que violavam certos princípios que garantem a reconstrução perfeita da forma de onda na ausência da quantização dos coeficientes de transformação. No entanto, é possível reconstruir exatamente a entrada quando usar a transformação de transição inventiva, e além disso, não é exigido nenhum pós-processamento especial do lado do descodificador, tal como na proposta da France Telecom.
[035] Note-se que vale a pena enfatizar que a utilização dessa janela de transição inventiva pode ser controlada através da unidade de determinação da largura de sobreposição inventiva, em vez ou como complemento de uma unidade de determinação do comprimento de transformação.
[036] Posteriormente os modelos privilegiados da presente invenção são discutidos e ilustrados em mais detalhe. Além disso, faz-se particular referência às reivindicações dependentes que definem mais modelos.
[037] Além disso, a especificação ilustra especificamente um aspecto relacionado com a mudança de sobreposição adaptativa da localização de transientes particularmente no que diz respeito às Figuras 1a até 7. Outro aspecto relacionado como a parte de sobreposição múltipla é ilustrado e descrito relativamente às Figuras 8a até 15f. Estes aspectos individuais podem ser implementados independentemente uns dos outros, isto é, a mudança de sobreposição pode ser aplicada sem uma zona de sobreposição múltipla ou a zona de sobreposição múltipla pode ser aplicada sem a mudança de sobreposição adaptativa da localização do transiente. Porém, em uma implementação, ambos os aspectos podem ser vantajosamente combinados, resultando em um conceito de codificação/descodificação com uma mudança de sobreposição adaptativa da localização do transiente e uma zona de sobreposição múltipla. Um conceito destes pode ser adicionalmente melhorado por um procedimento de mudança do comprimento de transformação, mais uma vez dependente de uma localização do transiente dentro de uma zona de antecipação do transiente de uma frame. A mudança do comprimento de transformação pode ser realizada dependente da determinação da largura de sobreposição ou independente da mudança de sobreposição.
[038] A presente invenção não é apenas útil para sinais de áudio, mas também é útil para sinais de vídeo, de fotografia ou de imagem, de um modo geral. Por exemplo, na codificação de imagens paradas ou de chamadas I frames em AVC ou em tecnologias mais ou menos avançadas, a presente invenção pode ser aplicada para evitar bloquear artefatos. Um transiente no campo de imagens seria uma aresta viva e uma frame corresponderia por exemplo a um macrobloco. A imagem é depois preferencialmente codificada bidimensionalmente, usando uma transformação de introdução de distorção e uma sobreposição espacial correspondente. Isto reduz os artefatos de bloqueio, por um lado, e reduz qualquer outro artefato através de partes de transiente, isto é, as partes com arestas viva por outro lado. Por conseguinte, a apresentação posterior aplica-se igualmente a sinais de imagem, apesar de não ser especificamente indicado ao longo da apresentação
[039] Passamos a discutir a seguir os modelos e aspectos com referência aos desenhos anexos, em que:
[040] A Fig. 1a ilustra um aparelho para codificar no contexto de um aspecto de mudança de sobreposição;
[041] A Fig. 1b ilustra um aparelho para descodificar para o aspecto da mudança de sobreposição;
[042] A Fig. 2a ilustra uma sequência de janelas com total sobreposição entre as janelas posteriores;
[043] A Fig. 2b ilustra uma sequência de janelas com meia sobreposição entre as janelas adjacentes;
[044] A Fig. 2c ilustra uma sequência de janelas com um quarto da sobreposição entre janelas adjacentes e meia sobreposição entre janelas adjacentes e uma total sobreposição posterior entre as janelas adjacentes;
[045] As Figuras 3a e 3c ilustram diferentes larguras de sobreposição para diferentes localizações de transientes para um modelo com um comprimento de transformação de 20 m, tal como em TCX 20;
[046] As Figuras 4a até 4g ilustram uma seleção dos comprimentos de sobreposição de transformação para um comprimento de transformação de 10 m, tal como TCX 10 dependente de uma localização do transiente;
[047] As Figuras 5a até 5c ilustram uma codificação de uma largura de sobreposição;
[048] A Fig. 6a ilustra uma codificação da largura de sobreposição e do comprimento de transformação com base na posição do transiente;
[049] A Fig. 6b ilustra um quadro de decisão do comprimento de transformação;
[050] A Fig. 7 ilustra diferentes sequências de janelas dependentes dos códigos de sobreposição anteriores e atuais;
[051] A Fig. 8a ilustra um codificador no contexto de uma parte de sobreposição múltipla em um modelo da presente invenção;
[052] A Fig. 8a ilustra um descodificador para o aspecto da parte de sobreposição múltipla em um modelo da presente invenção;
[053] A Fig. 9a ilustra um procedimento de acordo com um modelo privilegiado que ilustra o lado do codificador;
[054] A Fig. 9b ilustra um fluxograma de um procedimento preferido no lado do codificador;
[055] A Fig. 10a ilustra um modelo de um procedimento no lado do descodificador;
[056] A Fig. 10b ilustra um outro modelo de um procedimento realizado no lado do descodificador;
[057] A Fig. 11a ilustra operações realizadas no lado do codificador de um modelo;
[058] A Fig. 11b ilustra operações realizadas por um descodificador em um modelo da presente invenção;
[059] As Figuras 12a e 12b ilustram outro modelo de procedimentos por realizar no lado do codificador/descodificador no contexto do aspecto da sobreposição múltipla da invenção;
[060] A Fig. 13 ilustra diferentes sequências de janelas que têm todas uma parte de sobreposição múltipla;
[061] A Fig. 14a ilustra uma sequência de janelas com um comprimento de transformação mudado dependente da localização do transiente;
[062] A Fig. 14b ilustra outra sequência de janelas com uma parte de sobreposição múltipla;
[063] As Figuras 15a até 15f ilustram diferentes sequências de janelas e correspondentes partes de antecipação e pré-ecos;
[064] A Fig. 16 ilustra formas de janelas da técnica anterior; e
[065] A Fig. 17 ilustra sequências de janelas da técnica anterior formadas por formas de janelas da Fig. 16.
[066] A Fig. 1a ilustra um aparelho para codificar um sinal de áudio 100. O aparelho para codificar um sinal de áudio compreende um gerenciador de janelas controlável 102 para gerir as janelas do sinal de áudio 100 para providenciar uma sequência de blocos de amostras em janela em 103. O descodificador compreende ainda um conversor 104 para converter a sequência de blocos de amostras em janela 103 em uma representação espectral que compreende uma sequência de frames de valores espectrais indicada em 105. Além disso, é fornecido um detector da localização do transiente 106. O detector está configurado para identificar uma localização de um transiente dentro de uma zona de antecipação de transiente de uma frame. Além disso, um controlador 108 para controlar o gerenciador de janelas controlável está configurado para aplicar uma janela específica com um comprimento de sobreposição especificado para o sinal de áudio 100 em resposta a uma localização identificada do transiente ilustrado em 107. Além disso, o controlador 108 está, em um modelo, configurado para fornecer informação sobre janelas 112 não apenas para o gerenciador de janelas controlável 102, mas também para uma interface de saída 114 que fornece, como sua saída, o sinal de áudio codificado 115. A representação espectral que compreende a sequência de frames de valores espectrais 105 é introduzida em um processador de codificação 110, que pode realizar qualquer tipo de operação de codificação, tal como uma operação de predição, uma operação de modelação do ruído temporal, uma operação de quantização preferencialmente no que diz respeito ao modelo psico-acústico ou pelo menos no que diz respeito aos princípios psico-acústicos ou pode compreender uma operação de codificação de redução de redundância, tal como a operação de codificação Huffman ou uma operação de codificação aritmética. O rendimento do processador de codificação 110 é depois encaminhado para a interface de saída 114 e a interface de saída 114 depois fornece, por fim, o sinal de áudio codificado que tem associado, a cada frame codificada, uma certa informação de janela 112.
[067] O controlador 108 está configurado para selecionar a janela específica a partir de um grupo de pelo menos três janelas. O grupo compreende uma primeira janela com um primeiro comprimento de sobreposição, uma segunda janela com um segundo comprimento de sobreposição, e uma terceira janela com um terceiro comprimento de sobreposição ou sem sobreposição. O primeiro comprimento de sobreposição é maior do que o segundo comprimento de sobreposição e o segundo comprimento de sobreposição é maior do que uma sobreposição zero. A janela específica é selecionada pelo gerenciador de janelas controlável 102 com base na localização do transiente de modo a que uma de duas janelas de sobreposição de tempo-adjacente tem uns primeiros coeficientes de janelas na localização do transiente e a outra das duas janelas de sobreposição tempo-adjacente tem uns segundos coeficientes de janelas na localização do transiente, sendo os segundos coeficientes são pelo menos nove vezes maiores do que os primeiros coeficientes. Isto assegura que o transiente é substancialmente suprimido pela primeira janela que tem os primeiros (pequenos) coeficientes e o transiente quase que não é afetado pela segunda janela que tem os segundos coeficientes de janela. Preferencialmente, os primeiros coeficientes de janela são iguais a 1 dentro de uma tolerância de mais/menos 5%, tal como entre 0,95 e 1,05, e os segundos coeficientes de janela são preferencialmente iguais a 0 ou pelo menos mais pequenos que 0,05. Os coeficientes de janela podem ser negativos, assim como, neste caso, as relações e as quantidades dos coeficientes de janelas estão relacionados com a magnitude absoluta.
[068] A Fig. 2a ilustra uma sequência de janelas unicamente com as primeiras janelas, e as primeiras janelas têm o primeiro comprimento de sobreposição. Particularmente, a última frame associou uma primeira janela 200, a frame atual associou a janela 202 e a terceira ou próxima frame associou a janela 204. Neste modelo, as janelas adjacentes sobrepõem-se em 50%, isto é, um comprimento total. Além disso, as frames são colocadas relativamente às janelas para identificar que parte do sinal de áudio é processada por uma frame. Isto é explicado relativamente à frame atual. A frame atual tem uma parte esquerda 205a e uma parte direita 205b. Correspondentemente, a última frame tem uma parte direita 204b e uma parte esquerda 204a. De modo análogo, a frame seguinte tem uma parte esquerda 206a e uma parte direita 206b. Esquerda/Direita refere-se a mais cedo ou mais tarde no tempo, conforme é ilustrado na Fig. 2a. Quando é criada a frame atual de valores espectrais, são utilizadas as amostras de áudio obtidas pela gestão de janelas com a janela 202. As amostras de áudio são oriundas de partes de 204b a 206a.
[069] Tal como se é conhecido na técnica do processamento MDCT, geralmente, no processamento que usa uma transformação de introdução de distorção, esta transformação de introdução de distorção pode ser separada em um passo de dobrar e em um posterior passo de transformação que usa uma certa transformação de introdução de não distorção. No exemplo da Fig. 2a, a seção 204b é dobrada na seção 205a e seção 206a é dobrada na seção 205b. O resultado da operação de dobrar, isto é, a combinação pesada de 205a, 204b, por um lado, e de 206a e 205b são depois transformadas no domínio espectral usando uma transformação, tal como uma transformação DCT. No caso de um MDCT, é aplicada uma transformação DCT IV.
[070] Posteriormente isto é exemplificado com referência ao MDCT, mas outras transformações de introdução de distorção podem ser processadas de um modo similar e análogo. Como uma transformação volvida, a MDCT é um pouco não usual comparativamente com outras transformações relacionadas com Fourier pelo fato de ter metade das saídas das entradas (em vez do mesmo número). Em particular, é uma função linear F: R2N → RN (em que R denota o conjunto de números reais). O números reais 2N x0, . .., x2N-1 são transformados nos N números reais X0, ..., XN-1 de acordo com a fórmula:
Figure img0001
[071] (O coeficiente de normalização à frente desta transformação, aqui unidade, é uma convenção arbitrária e difere entre tratamentos. Apenas o produto da normalização da MDCT e da IMDCT, abaixo, está limitado.)
[072] Transformação inversa
[073] A MDCT inversa é conhecida por IMDCT. Por haver quatro números diferentes de entradas e saídas, à primeira vista pode parecer que a MDCT não deve ser invertível. No entanto, consegue-se uma perfeita invertibilidade se adicionar as IMDCTs sobrepostas dos blocos de sobreposição tempo-adjacente, fazendo com que os erros cancelem e os dados originais sejam restaurados; esta técnica é conhecida como o cancelamento de distorção do domínio do tempo (TDAC).
[074] A IMDCT transforma os N números reais X0, ..., XN-1 em 2N números reais y0, ..., y2N-1 de acordo com a fórmula:
Figure img0002
[075] (Tal como para DCT-IV, uma transformação ortogonal, a inversão tem a mesma forma da transformação de encaminhamento.)
[076] No caso de uma MDCT em janelas com a habitual normalização de janela (ver abaixo), o coeficiente de normalização em frente à IMDCT deve ser multiplicado por 2 (isto é., tornar-se 2/N).
[077] Em típicas aplicações de compressão do sinal, as propriedades de transformação são ainda mais melhoradas usando uma função de janela wn (n = 0, ..., 2N-1) que é multiplicada por xn e yn nas fórmulas de MDCT e IMDCT, em cima, para evitar descontinuidades nos limites n = 0 e 2N fazendo com que a função vá suavemente para zero nestes pontos. (Ou seja, nós visualizamos os dados antes da MDCT e depois da IMDCT.) Em princípio, x e y podem ter funções de janela diferentes, e a função de janela também pode mudar de um bloco para o próximo (especialmente no caso em que são combinados blocos de dados de diferentes tamanhos), mas para simplificar, consideramos o caso comum de funções de janela idênticas para blocos do mesmo tamanho.
[078] A transformação permanece invertível (ou seja, a TDAC funciona), para uma janela simétrica wn = w2N-1-n, enquanto w satisfaz a condição Princen-Bradley:
Figure img0003
[079] são usadas várias funções de janela. Uma janela que produz uma forma conhecida por transformação volvida modulada [3][4] é fornecida por
Figure img0004
[080] e é usada para MP3 e MPEG-2 AAC, e
Figure img0005
[081] para Vorbis. AC-3 usa uma janela derivada Kaiser-Bessel (KBD), e MPEG-4 AAC pode também usar uma janela KBD.
[082] Note que as janelas aplicadas à MDCT são diferentes das janelas usadas para os alguns outros tipos de análise de sinal, uma vez que têm de satisfazer a condição Princen-Bradley. Uma das razões para esta diferença é que as janelas MDCT são aplicadas duas vezes, tanto para a MDCT (análise) como para a IMDCT (síntese).
[083] Tal como se pode ver por inspeção das definições, para o N par a MDCT é essencialmente equivalente a uma DCT-IV, em que a entrada é deslocada em N/2 e dois blocos N de dados são transformados de uma só vez. Ao examinar estar equivalência com mais cuidado, podem-se derivar facilmente propriedades imperantes, tal como TDAC.
[084] Para definir a relação precisa para com DCT-IV, é necessário perceber que DCT-IV corresponde a condições de limite par/ímpar alternadas: par no seu limite esquerdo (por volta de n=−1/2), ímpar no seu limite direito (por voltar de n=N−1/2), e assim por diante (em vez de limites periódicos tal como uma DFT). Isto segue-se às identidades e. Por conseguinte, se as suas entradas
Figure img0006
[085] Por conseguinte, se as suas entradas forem uma rede x de comprimento N, podemos imaginar estender esta rede para (x, −xR, −x, xR, ...) e assim por diante, em que xR denota x por ordem inversa.
[086] Considerando uma MDCT com 2N entradas e N saídas, em que dividimos as entradas em quatro blocos (a, b, c, d), cada qual com o tamanho N/2. Se deslocarmos estes para a direita em N/2 (a partir do termo +N/2 na definição de MDCT), então (b, c, d) estendem-se pela extremidade das N entradas DCT-IV, e temos de os "dobrar" de volta de acordo com as condições limite acima descritas.
[087] Deste modo, a MDCT de 2N entradas (a, b, c, d) é exatamente equivalente a um DCT-IV das entradas N: (−cR−d, a−bR), em que R denota a inversão, tal como em cima.
[088] Isto é exemplificado para a função de janela 202 na Fig. 2a. a é a parte 204b, b é a parte 205a, c é a parte 205b e d é a parte 206a.
[089] (Deste modo, qualquer algoritmo para calcular DCT-IV pode ser trivialmente aplicado à MDCT.)
[090] De modo similar, a fórmula IMDCT acima é precisamente 1/2 de DCTIV (que é a seu próprio inverso), em que a saída se estende (através das condições limite) para um comprimento 2N e deslocada de volta para a esquerda em N/2. A DCT-IV inversa simplesmente devolve as entradas (−cR−d, a−bR) acima mencionadas. Quando isto se estende e é deslocado através das condições limite, obtém-se:
[091] IMDCT(MDCT(a, b, c, d)) = (a−bR, b−aR, c+dR, d+cR) / 2.
[092] Metade das saídas IMDCT são, pois, redundantes, como b−aR = −(a−bR)R, e de igual modo para os dois últimos termos. Se agruparmos a entrada em blocos maiores A,B do tamanho N, em que A=(a, b) e B=(c, d), podemos escrever este resultado de um modo simples:
[093] IMDCT(MDCT(A, B)) = (A−AR, B+BR) / 2
[094] Pode-se agora entender como funciona TDAC. Suponde que se calcula a MDCT do tempo adjacente, 50% sobreposto, bloco 2N (B, C). A IMDCT resultaria em, tal como em cima: (B−BR, C+CR) / 2. Quando isto é adicionado com o resultado anterior de IMDCT na meia sobreposição, os termos invertidos cancelam e obtém-se simplesmente B, recuperando os dados originais.
[095] A origem do termo "cancelamento da distorção do domínio do tempo" fica agora claro. A utilização dos dados de entrada que se estendem para além dos limites de DCT-IV lógico faz com que os dados sejam distorcidos do mesmo modo que as frequências para além da frequência Nyquist são distorcidas para frequências mais baixas, exceto o fato de esta distorção ocorrer no domínio do tempo em vez no domínio da frequência: não conseguimos distinguir as contribuições de a e de bR relativamente a MDCT de (a, b, c, d), ou equivalentemente, relativamente ao resultado de IMDCT(MDCT(a, b, c, d)) = (a−bR, b−aR, c+dR, d+cR) / 2. As combinações c−dR, e assim por diante, têm precisamente os sinais certos para as combinações para cancelar quando são adicionados.
[096] Para N ímpar (que na prática são raramente usados), N/2 não é um número inteiro, portanto, o MDCT não é simplesmente uma permutação de deslocação de um DCT-IV. Neste caso, a deslocação adicional em metade de uma amostra significa que o MDCT/IMDCT se torna equivalente a DCT-III/II, e a análise é análoga à de cima.
[097] Vimos em cima que a MDCT de 2N entradas (a, b, c, d) é equivalente a um DCT-IV das N entradas (−cR−d, a−bR). O DCT-IV é concebido para o caso de a função no limite direito ser ímpar, e por isso os valores perto do limite direito estão próximos de 0. Se o sinal de entrada for suave, o caso é este: os componentes mais à direita de a e bR são consecutivos na sequência da entrada (a, b, c, d), e por isso a sua diferença é pouca. Vamos observar o centro do intervalo: se reescrevermos a expressão acima como (−cR−d, a−bR) = (−d, a)−(b,c)R, o segundo termo, (b,c)R, fornece uma suave transição no meio. No entanto, no primeiro termo, (−d, a), existe uma potencial descontinuidade onde a extremidade direita de −d encontra a extremidade esquerda de a. Esta é a razão para usar uma função de janela que reduz os componentes perto dos limites da sequência de entradas (a, b, c, d) em direção a 0.
[098] Em cima, a propriedade de TDAC ficou comprovada para a MDCT ordinária, mostrando que a adição de IMDCTs de blocos de tempo adjacente na sua metade de sobreposição recupera os dados originais. A derivação desta propriedade de inversão para a MDCT em janela é apenas ligeiramente mais complicada.
[099] Considere sobrepor conjuntos consecutivos de 2N entradas (A,B) e (B,C), para blocos A,B,C do tamanho N. Lembre-se de cima que quando (A, B) e (B,C) são MDCTed, IMDCTed, e adicionados na sua metade de sobreposição, obtemos (B + BR ) 2/ + (B − BR ) 2/ = B , os dados originais.
[100] Agora supomos que multiplicamos ambas as entradas MDCT e as saídas IMDCT por uma função de janela do comprimento 2N. Tal como em cima, assumimos uma função de janela simétrica, que é, por isso, da forma em que W é um N vetor de comprimento e R denota reversão tal como antes. Depois a condição Princen-Bradley pode ser escrita como W +WR2R =( 1,1 ,...), com os quadrados e adições realizados de forma elementar.
[101] Por isso, em vez de MDCTing (A,B), tem-se agora MDCTs (WA,WRB) com todas as multiplicações realizadas de forma elementar. Quando isto é IMDCTed e é novamente multiplicado (de forma elementar) pela função de janela, a última N metade torna-se:
[102] WR·(WRB+(WRB)R)=WR·(WRB+WBR)=W2R B+WWRBR
[103] (Note que já não temos a multiplicação por 1/2, porque a normalização de IMDCT difere em um fator de 2 no caso em janela.)
[104] De modo similar, a MDCT e IMDCT em janela de (B,C)
[105] resulta na sua primeira metade N:
[106] W .( WB −WR BR) = W2B −WWR BR
[107] Quando se adiciona estas duas metades uma à outra, recuperam-se os dados originais.
[108] Em um procedimento idêntico, a próxima frame é calculada usando as partes 205b, 206a, 206b e a primeira parte da frame lado a lado na Fig. 2a. Assim sendo, as janelas 200, 202, 204 correspondem à função de janela que tem um primeiro comprimento de sobreposição das três janelas com os diferentes comprimentos de sobreposição usados pelo gerenciador de janelas controlável 102 da Fig. 1a. Conforme declarado, a Fig. 2a ilustra uma situação em que não são detectados transientes na última frame, na frame atual e na frame seguinte e, especificamente, na zona de antecipação para cada frame indicada pelo item 207 para a última frame, 208 para a frame atual e 209 para a frame seguinte. A Fig. 2b ilustra uma situação, em que os transientes são detectados em posições de transientes 210, 211, 212, 213. Pelo fato de uma posição de transiente ser, por exemplo, detectada em 210, e uma vez que 210 está na zona de antecipação que começa em 207 para a última frame, o controlador 108 determina que deve ser feita uma mudança da primeira janela 201 para uma outra janela 215. Devido aos outros transientes 211, e, particularmente, 212/213 que ficam na próxima zona de antecipação, a frame atual é adicionalmente processada usando a segunda janela 216 com o segundo comprimento de sobreposição. Assim sendo, a janela 215 é uma espécie de uma janela de arranque que muda da janela com o primeiro comprimento de sobreposição indicado em 201 para a segunda janela que tem o segundo comprimento de sobreposição. Conforme ilustrado, o segundo comprimento de sobreposição estende-se apenas por oito ranhuras e, por isso, tem apenas metade do comprimento do primeiro comprimento de sobreposição. Pelo fato de na zona de antecipação que começa em 209 não ser detectado mais nenhum transiente, muda-se de volta para a janela longa 201 através de uma espécie de “parar janela 217”. Mais uma vez, note-se que o comprimento de sobreposição ilustrado em 218 na frame atual por um lado e entre a frame atual e a frame seguinte por outro lado, que está indicada em 218, tem metade do comprimento do comprimento de sobreposição na Fig. 2a para a primeira janela que é 16 ranhuras ilustradas.
[109] Assim sendo, a janela de meia sobreposição é utilizada para transientes que são detectados nas zonas de detecção 1 e 6. Conforme ilustrado em 219, essa zona de detecção compreende duas ranhuras. Assim sendo, a faixa de antecipação está separada em oito ranhuras preferencialmente. Por outro lado, no entanto, pode fazer-se uma subdivisão mais por alto ou mais precisa. Porém, em modelos preferidos, a zona de antecipação está subdividida em pelo menos quatro ranhuras e preferencialmente subdividida em oito ranhuras conforme ilustrado em 2b e 2c e outras figuras.
[110] Conforme ilustrado, a segunda janela 216 tem a meia sobreposição em ambos os lados, enquanto a janela 215 tem a meia sobreposição no lado direito e tem a sobreposição total no lado esquerdo, e a janela 217 tem a meia sobreposição no lado esquerdo e a sobreposição total no lado direito.
[111] Faz-se referência à Fig. 2c. A Fig. 2c ilustra uma situação, em que o detector de transientes detecta na zona de antecipação que começa no centro da última frame que existe um transiente na segunda zona de detecção de transientes 222. Assim sendo, muda-se para um quarto de sobreposição para garantir que o transiente 223 é apenas “espalhado” dentro da janela 224, sem ser incluído na zona definida pela janela 201 ou na zona definida pela janela 225. Além disso, é indicada uma sequência, na qual se realiza uma mudança de um quarto de sobreposição para a última frame e a frame atual para a meia sobreposição entre a frame atual e a frame seguinte e de volta para a sobreposição total entre a frame seguinte e a frame lado a lado. Isto deve-se aos transientes detectados. Na zona de antecipação que começa em 208, os transientes são detectado na parte um e na parte seis, enquanto os transientes são detectados na parte dois e parte cinco entre a última frame 207 e a frame atual 208.
[112] Assim sendo, a Fig. 2c ilustra uma sequência de janelas, onde é apresentada a primeira janela 201 que tem o primeiro ou todo comprimento de sobreposição, onde é utilizada uma segunda janela que tem o segundo comprimento de sobreposição indicado em 218, onde a segunda janela pode, por exemplo, ser a janela 225 ou a janela 226, e onde uma terceira janela com um terceiro comprimento de sobreposição é ilustrada como janela 224 ou janela 225 que tem no seu lado esquerdo, o pequeno comprimento de sobreposição 229. Assim sendo, é ilustrada uma sequência de janelas que muda de uma sobreposição total para um quarto de sobreposição e depois para meia sobreposição e depois para uma sobreposição total. Por conseguinte, a primeira janela com o primeiro comprimento de sobreposição pode ser uma janela assimétrica com uma sobreposição diferente desde a primeira sobreposição em um lado e com o primeiro comprimento de sobreposição no outro lado. Em alternativa, porém, a primeira janela pode também ser uma janela com o primeiro comprimento de sobreposição em ambos os lados conforme ilustrado em 216 na Fig. 2b. Além disso, a segunda janela com o segundo comprimento de sobreposição pode ser uma janela simétrica com o segundo comprimento de sobreposição em ambos os lados ou pode ser uma janela assimétrica com o segundo comprimento de sobreposição em um lado e, no outro lado, com o primeiro comprimento de sobreposição ou o terceiro comprimento de sobreposição ou outro qualquer comprimento de sobreposição. Por fim, a terceira janela com o terceiro comprimento de sobreposição pode ser uma janela simétrica com o terceiro comprimento de sobreposição em ambos os lados ou pode ser uma janela com o terceiro comprimento de sobreposição em um lado e com um comprimento de sobreposição diferente no outro lado.
[113] Posteriormente são ilustrados outros modelos relativamente às seguintes figuras. De um modo geral, a detecção do transiente e a sua localização podem ser feitas por exemplo usando um método ou procedimento similar ao detector de transientes descrito na Patente norte-americana 6.826.525 B2, mas podem ser também usados quaisquer outros detectores de transientes.
[114] A unidade de detecção de transientes identifica a presença e, se se aplicar, a localização do início do transiente mais forte na nova parte do sinal de uma certa frame, isto é, excluindo a zona de sobreposição entre a frame atual e a frame anterior. A resolução do índice que descreve a localização do transiente é, nas seguintes figuras, 1/8 do comprimento da frame, portanto, o índice vai de 0 a 7. Em figuras subsequentes, os sub-blocos com índices 0, …, 7 representam os mais recentes 20 m de um sinal do domínio de tempo que são usados para a codificação da frame atual.
[115] As Figuras 3a-3c ilustram a seleção da largura da sobreposição de transformação para um comprimento de transformação em m exemplificativo, isto é, para um comprimento de transformação TCX20.
[116] Na Fig. 3a não está presente um transiente na frame atual. Por isso, é detectada uma sobreposição total 300.
[117] A Fig. 3b, em contrapartida, ilustra uma situação em que um transiente é detectado no sétimo sub-bloco, de modo a ser selecionada uma meia sobreposição 302 pelo controlador 108 da Fig. 1a. Além disso, a Fig. 3c ilustra a situação em que um transiente é detectado no sexto sub-bloco e, por isso, é definida uma sobreposição mínima304 pelo controlador. Assim sendo, o detector da localização de transientes 106 detecta se existe um transiente e, em caso negativo, é selecionada a largura de sobreposição ou a primeira largura de sobreposição 300. Quando, porém, existe um transiente no sétimo sub-bloco como é determinado pelo detector de localização de transientes 106 da Fig. 1a, o segundo comprimento de sobreposição 302, que é preferencialmente metade do primeiro comprimento de sobreposição 300, é definido pelo controlador e quando o transiente está no sub-bloco 6, é definida uma sobreposição mínima. A Fig. 3c adicionalmente mostra a situação em que, apesar do fato de o transiente ser detectado na localização 6 ou 7, o comprimento de transformação mantém-se mesmo assim. Assim sendo, os comprimentos de transformação das janelas 301a, 301b ou 303a ou 303b são idênticos e iguais à primeira janela que tem o comprimento de sobreposição mais comprido ilustrado na Fig. 3a em 301a e 301b. Como se pode ver mais à frente, é preferível não apenas controlar o comprimento de sobreposição, mas adicionalmente controlar o comprimento de transformação especificamente em situações nas quais o transiente é detectado em outros sub-blocos. Assim sendo, a largura de sobreposição entre a janela de transformação atual e a seguinte depende da localização do transiente. A sobreposição entre a janela de transformação atual e a anterior, porém, foi determinada ao processar a frame anterior.
[118] Posteriormente é feita referência à Fig. 4a até 4g para mostrar a seleção do comprimento de sobreposição de transformação para o comprimento de transformação de 10 m, isto é, TCX10. Se, por exemplo, um codec é limitado para 10 m de comprimento de transformação, a sobreposição entre duas janelas TCX10 é escolhida de modo a suprimir fortemente pseudo-transientes devido à modelação TNX de distorção do tempo do erro de codificação. Além disso, é minimizada a persistência do transiente para mais do que cinco sub-blocos anteriores e mais do que cinco sub-blocos seguintes. Isto é, o pré-eco e o póseco são limitados para 12,5 ms. A escolha da sobreposição baseia-se na posição do transiente.
[119] A Fig. 4a ilustra uma situação em que um transiente é detectado no 0.º ou 1.º sub-bloco. De seguida, são escolhidas as “primeiras janelas” 401, 402 que têm o comprimento de sobreposição máximo ou o primeiro 403. Além disso, para fins ilustrativos, é ilustrada uma sobreposição total de TCX20 com a janela anterior e com a janela seguinte com a referência 404. Assim sendo, a “sobreposição total” corresponde a 50% da janela 401, 402 ou corresponde a 33% da janela TCX20 301a, 301b, por exemplo. Assim sendo, os comprimentos de sobreposição 300 na Fig. 3a e 403 na Fig. 4a são idênticos.
[120] A Fig. 4b ilustra uma situação em que o transiente é detectado no segundo sub-bloco e o controlador depois controla a sequência de janelas, de modo a escolher uma sobreposição mínima 404 correspondente ao “terceiro comprimento de sobreposição” ilustrado em 229 da Fig. 2c. Assim sendo, as janelas 406, 407 que são, neste modelo, janelas assimétricas, são selecionadas tendo o comprimento de sobreposição curto correspondente á “segunda janela” na linguagem da Fig. 1a e 1b. Além disso, quando é detectado o transiente no terceiro sub-bloco, é selecionado o segundo comprimento de sobreposição 405. Assim sendo, as janelas 408, 409 correspondem à terceira janela que tem o terceiro comprimento de sobreposição 405, mas são janelas assimétricas.
[121] Além disso, conforme ilustrado na Fig. 4d, o comprimento de sobreposição total é determinado quando o transiente está na parte do transiente 4 e, por conseguinte, as janelas selecionadas nesta situação são as janelas 401, 402 ilustradas na Fig. 4a. Ao escolher a sobreposição de modo a que uma das transformações de sobreposição contenha um transiente conforme ilustrado, o caso em que o transiente está no segundo ou no terceiro sub-bloco é ilustrado na Fig. 4f ou 4g respetivamente. Os casos em que o transiente está no sub-bloco zero ou no primeiro sub-bloco são depois tratados separadamente, tal como nos casos em que o transiente está no quarto ou no quinto sub-bloco. Por isso, fazse referência à Fig. 4e que ilustra a situação em que o transiente está no subbloco zero, sendo obtida uma sequência de janelas conforme ilustrado na Fig. 4e, onde há uma meia sobreposição 405 e que é depois mudada de volta para a sobreposição total 403. Isto é obtido pela sequência de janelas formada pela janela inicial 408, e a janela de parar 409 e outra janela de comprimento normal 402.
[122] A Fig. 4f, por outro lado, ilustra a situação em que o transiente está no primeiro sub-bloco, de modo ser selecionado um curto ou um terceiro comprimento de sobreposição 404, que é possibilitado pela janela inicial 406 e a janela de parar 407 que é depois seguida por uma janela de sobreposição total 402. Assim sendo, a janela 408 ou 409 na Fig. 4e ilustra a segunda janela que tem um segundo comprimento de sobreposição 405 e a janela 406 e 407 corresponde à terceira janela que tem o terceiro comprimento de sobreposição 404”.
[123] A Fig. 4g ilustra uma situação em que o transiente é detectado no quarto sub-bloco. Esta situação é refletida por uma primeira janela 401 que tem um comprimento de sobreposição total 403 e uma segunda janela 409 que tem um comprimento de meia sobreposição 405 e uma outra segunda janela 414 que tem um segundo comprimento de sobreposição 405. O lado direito da janela 414, porém, depende do comprimento de sobreposição determinado para a frame seguinte, isto é, a próxima zona de antecipação que começa no momento indicado pelo número de referência 415.
[124] Assim sendo, as Figuras 4a-4g ilustram a situação em que o comprimento de sobreposição é determinado de modo a que o transiente esteja localizado apenas dentro de uma janela que é garantida pelo fato de, na localização do transiente, por exemplo no sub-bloco 4, os coeficientes da janela 414 serem iguais a 0 e de os coeficientes da janela 409 serem iguais a 1.
[125] Posteriormente faz-se referência a um modelo preferido, no qual o comprimento de transformação é derivado do comprimento de sobreposição. As Figuras 5a, 5b, 5c ilustram três diferentes comprimentos de sobreposição 403, 405, 404, em que o comprimento de sobreposição total é determinado por duas primeiras janelas indicadas em 501 e 502. Além disso, o comprimento de meia sobreposição é obtido por duas segundas janelas, cujo segundo comprimento de sobreposição está ilustrado em 503 e 504, e o terceiro comprimento de sobreposição 404 é obtido por duas terceiras janelas 505 e 506, cujo terceiro comprimento de sobreposição é 404. A sobreposição total é codificada preferencialmente usando um bit "0", a meia sobreposição é codificada usando uma combinação do bit “11” e a sobreposição mínima é codificada usando a combinação do bit “10” bit.
[126] Assim sendo, esta codificação é útil quando determinar a largura de sobreposição e a seleção do comprimento de sobreposição quando se pode usar TCX-20 e uma combinação de frames TCX-5 e TCX-10.
[127] Ao contrário dos esquemas de codificação que derivam as sobreposições instantâneas de inter-transformação a partir de uma seleção fornecida de comprimentos de transformação para um par de frames, isto é, a largura de sobreposição segue a saída da determinação do comprimento de transformação, um modelo preferido da presente invenção refere-se a um sistema de codificação que pode controlar ou derivar o(s) comprimento(s) de transformação para serem usados para uma frame particular usando a largura de sobreposição atribuída a essa frame e opcionalmente a largura de sobreposição de uma frame anterior, isto é, o comprimento de transformação segue os dados da unidade de determinação da largura de sobreposição ou, relativamente à Fig. 1a, através da cooperação do detector de localização de transientes106 e do controlador 108. A Fig. 6a ilustra um quadro de codificação e a Fig. 6b ilustra um correspondente quadro de decisão. Nas Figuras 5a, 5b e 5c, a linha contínua representa a metade direita da janela da última transformação na frame atual e a linha descontínua representa a metade esquerda da janela da primeira transformação na frame seguinte.
[128] A Fig. 6a ilustra uma codificação da sobreposição e do comprimento de transformação com base na posição do transiente. Em particular, a decisão de transformação curta/longa é codificada usando 1 bit como indicado na coluna 600 e a sobreposição com a primeira janela da frame seguinte é codificada usando o código do comprimento variável com 1 ou 2 bits conforme ilustrado na coluna 602. O código para a decisão de transformação curta/longa 600, por um lado, e o código binário para a largura de sobreposição da coluna 602 estão concatenados para obter o chamado código de sobreposição na coluna 603. Além disso, a sobreposição com a primeira janela da frame seguinte é determinada pelo controlador 108 dependendo do índice da posição do transiente da coluna 604 conforme determinado pelo detector de transientes 106. Ao contrário de ilustrações anteriores, o índice da posição do transiente tem uma maior faixa de antecipação a começar em duas ranhuras anteriores indicadas por -1 e -2 e para esta situação, adicionalmente, a sobreposição total é sinalizada neste modelo.
[129] Assim sendo, a sobreposição total é sinalizada para “nenhum transiente” ou uma posição de transiente entre -2 e 1. Além disso, uma meia sobreposição é sinalizada pela coluna 605 para posições do transiente 2 e 3 e 7 e a sobreposição mínima é sinalizada para posições do transiente 4, 5, 6.
[130] Assim sendo, o índice “-2” na Fig. 6a significa que houve um transiente na frame anterior na posição 6, e “-1” significa que houve um transiente na frame anterior na posição 7. Tal como foi afirmado, “nenhum” significa que não foi detectado nenhum transiente na zona de antecipação do transiente.
[131] Tal como foi delineado, a decisão de transformação curta/longa e a largura de sobreposição são codificadas em conjunto usando o código de sobreposição. O código de sobreposição consiste de 1 bit para uma decisão de transformação curta/longa e do código binário para a largura de sobreposição codificada com 1 ou 2 bits. O código é um código de comprimento variável, onde é automaticamente detectado onde começa um nome de código e onde termina o nome de código anterior. Os códigos para a decisão de transformação curta/longa e para a largura de sobreposição estão definidos na Fig. 6a. Por exemplo, quando a decisão de transformação curta/longa fornece 1 e é selecionada a sobreposição mínima, isto é, um código binário é igual a 10, o código de sobreposição é 110.
[132] Além disso, Fig. 6a ilustra a situação em que é tomada uma decisão de transformação curta para todas as posições do transiente entre -2 e 5 e em que é escolhida uma transformação longa para nenhum transiente ou para o transiente na posição 6 ou 7. Assim sendo, a Fig. 6a ilustra a situação em que o detector da localização do transiente pode detectar um certo transiente em uma certa posição e em que, independentemente uma da outra ou em paralelo, pode ser determinada a decisão de transformação curta/longa e a sobreposição com a primeira janela da frame seguinte, isto é, é possível derivar o código da sobreposição total 603. Enfatiza-se que os profissionais na matéria entendem que podem ser usados quaisquer outros códigos para codificar diferentes transformações curtas/longas e diferentes sobreposições. Além disso, podem ser determinados e sinalizados mais de dois, isto é três ou mesmo mais, comprimentos de transformação e, ao mesmo tempo, podem ser determinados e também codificados mais do que três sobreposições, como quatro ou cinco diferentes comprimentos de sobreposição. Tudo isto é determinado, por exemplo, em resposta a um detector da localização do transiente que opera em pelo menos quatro diferentes divisões por frame ou, tal como no modelo, que opera em oito divisões por frame ou, para uma decisão mais precisa, que opera em ainda mais divisões, tal como em dezasseis divisões de uma frame.
[133] Com base no código de sobreposição para a frame atual e para a frame anterior, é tomada uma decisão para uma combinação do comprimento de transformação para usar, conforme ilustrado na Fig. 6b. Assim sendo, a Fig. 6b ilustra a decisão de um comprimento de transformação com base no código de sobreposição anterior e no código de sobreposição atual. Por exemplo, se o código de sobreposição anterior e o código de sobreposição atual forem ambos “00”, é utilizada uma janela como 401. Se o código de sobreposição anterior foi 10 e o código de sobreposição atual for 00, é selecionada a mesma janela. No entanto, se o código anterior for 111, ou seja um código de meia sobreposição, e o código de sobreposição atual for 00, é selecionada a janela 409 da Fig. 4c, por exemplo. Para um código de sobreposição anterior de 110 e o código de sobreposição atual 00, é novamente selecionada uma transformação longa, mas com uma janela idêntica à janela 407, e a situação é a mesma para o código de sobreposição anterior de 010 e o código de sobreposição atual de 00, isto é, é selecionada a janela 407 da Fig. 4f. Por fim, para um código de sobreposição anterior 011, e para o código de sobreposição atual 00, é selecionada uma janela como 409 na Fig. 4e.
[134] São selecionadas outras janelas para outras combinações e isto é especificamente ilustrado relativamente à Fig. 7. Assim sendo, a Fig. 7 ilustra algumas das combinações do comprimento de transformação juntamente com a posição do transiente na frame atual e com os códigos de sobreposição para a frame atual e para frame anterior. 110/010 – 111 na Fig. 7 significa que o código de sobreposição anterior é 110 ou 010 e que o código de sobreposição atual é 111. A Fig. 7 ilustra, por isso, diferentes combinações. Por exemplo, a imagem no lado esquerdo superior da Fig. 7 ilustra uma sobreposição mínima no início de uma sequência de duas transformações TCX-5 e uma transformação TCX-10 seguinte que tem a sobreposição total. Contrariamente a isso, a imagem por baixo desta imagem ilustra uma sobreposição mínima seguida por quatro janelas TCX-5, em que a quarta janela das janelas TCX-5 tem meia sobreposição e assim por diante. Assim sendo, os números de referência 700, 701 ilustram uma sequência de duas janelas TCX-5 ou de duas janelas curtas seguidas por uma janela média. De modo idêntico, os números de referência 702, 703, 704, 705, 706, 707 ilustram uma situação com quatro comprimentos de transformação curta ou transformações “TCX-5”, enquanto os números de referência 708, 709, 710, 711 ilustram a situação em que há, da primeira vez, isto é, no início da sequência, uma janela de comprimento de transformação média, tal como uma janela TXC 10 seguida por duas janelas TCX-5 ou de comprimento de transformação curta. As sequências de 700 a 711 na Fig. 7 podem ser introduzidas por outras sequências dessas ou por janelas TCX-20 ou de comprimento de transformação longa que têm diferentes sobreposições, tal como sobreposições curtas em 700, 702 por exemplo, uma sobreposição média em 704 ou sobreposições longas em 708 ou 710, por exemplo. Ao mesmo tempo, a sequência pode ser seguida por outras sequências dessas ou pode ser seguida por TCX-20, isto é, por janelas de transformação longa, mas com um comprimento de sobreposição diferente. Assim sendo, a sequência 700, por exemplo, termina com uma sobreposição longa e a sequência 702, por exemplo, termina com uma sobreposição média ou a sequência 706, por exemplo, termina com um comprimento de sobreposição pequeno.
[135] Conforme ilustrado na Fig. 1a, a informação de janela, isto é, o código de sobreposição 603 da Fig. 6a ilustrado em 112 na Fig. 1a pode ser associado a cada frame codificada por uma interface de saída 114.
[136] Além disso, a transformação aplicada no conversor 104 pode ser uma MDCT ou uma MDST ou uma transformação de introdução de distorção diferente que é caracterizada pelo fato de o número de valores espectrais em um bloco de valores espectrais ser inferior ao número de amostras em janela em um bloco de amostras em janela introduzido na transformação ou, relativamente ao lado do descodificador onde o número de amostras de saída do domínio do tempo é superior ao número de valores espectrais introduzidos nessa transformação de retorno ou inversa redutora da distorção.
[137] Conforme ilustrado em todas as Figuras de 2 a 7, é mantida uma grelha de frames constante. Assim sendo, o controlador 108 garante que, apesar de se mudar para comprimentos de transformação mais curtos, tal como por exemplo ilustrado na Fig. 7, é sempre mantida a mesma grelha de frames constante. Isto é garantido pelo uso exclusivo dessas janelas específicas que resultam sempre em um comprimento de transformação similar para cada classe de janelas no contexto do correto tamanho de sobreposição. Assim sendo, cada comprimento de transformação TCX-5 é definido para ter essa zona de sobreposição e uma zona constante entre as duas zonas de sobreposição que a transformação resulta em N/4 valores espectrais, onde N é o número dos valores espectrais dentro de uma frame. A forma e o tamanho e especificamente os comprimentos de sobreposição das janelas de transformação TCX 20 são adicionalmente concebidos de modo a que esta janela resulta em N amostras espectrais N depois da transformação.
[138] A Fig. 1c ilustra uma implementação privilegiada do lado do descodificador do conversor controlável 158. Em particular, o conversor controlável 158 compreende um conversor frequência-tempo 170, um gerenciador de janelas de síntese posteriormente conectado 172 e um adicionador de sobreposição final 174. Especificamente, o conversor frequênciatempo realiza a transformação tal como uma transformação DCT-IV e uma subsequente operação de desdobrar, de modo a que a saída do conversor frequência-tempo 170 tenha, para uma primeira ou longa janela, 2N amostras enquanto a introdução no conversor frequência-tempo foi, a título exemplificativo, de N valores espectrais. Por outro lado, quando a introdução no conversor frequência-tempo é de N/8 valores espectrais, a saída é de N/4 valores do domínio do tempo para uma operação MDCT, a título exemplificativo.
[139] De seguida, a saída do conversor frequência-tempo 170 é introduzida em um gerenciador de janelas de síntese, que aplica a janela de síntese que é preferencialmente exatamente a mesma da janela do lado do codificador. Assim sendo, cada amostra está, antes de ser adicionada uma sobreposição, em janela mediante duas janelas, de modo a que a resultante “gestão total de janelas” seja um quadrado dos correspondentes coeficientes de janela para que a condição Princen-Bradley seja preenchida conforme discutido acima.
[140] Por fim, o adicionado de sobreposição 174 faz a correspondente adição correta de sobreposição para finalmente obter o sinal de áudio descodificado na saída 175. Em particular, o conversor frequência-tempo 170, o gerenciador de janelas de síntese 172 e o adicionador de sobreposição 174 são controláveis e são controlados, por exemplo, pelo código de sobreposição 603 discutido no contexto da Fig. 6a ou por qualquer outra informação relativa à situação discutida no contexto da Fig. 6b. No entanto, é preferencialmente determinado o correspondente comprimento de transformação para o converso frequência-tempo, com base no código de sobreposição anterior e no código de sobreposição atual usando o quadro da decisão do comprimento de transformação. Além disso, o tamanho/forma da janela é também determinado com base no código de sobreposição anterior e em um código de sobreposição atual, e o mesmo é válido para o adicionado de sobreposição, de modo a que o adicionador de sobreposição aplique a sobreposição máxima, a sobreposição média ou a sobreposição mínima conforme sinalizada.
[141] Assim sendo, é preferível o controlador 180 no descodificador na Fig. 1c receba os códigos de sobreposição, isto é, o código de sobreposição anterior 606 e o código de sobreposição atual 607, e determina, a partir desta informação, a sobreposição e a janela para o bloco de valores espectrais.
[142] Assim sendo, é determinada cada janela e o correspondente tamanho de transformação associado à janela. Nos modelos preferidos em que uma MDCT é usada como uma transformação e uma MDCT inversa é usada para a transformação inversa, o tamanho da janela é duas vezes o comprimento de transformação ou o comprimento de transformação é metade do tamanho da janela.
[143] A Fig. 1d ilustra outro modelo da presente invenção implementado com um dispositivo móvel, em que o dispositivo móvel compreende, por um lado, um codificador 195 e, por outro lado, um descodificador 196. Além disso, de acordo com um modelo preferido da presente invenção, tanto o codificador 105 como o descodificador 106 recuperam a mesma informação de janela a partir de apenas uma única memória 197, uma vez que as janelas utilizadas no codificador 195 e as janelas utilizadas no descodificador 196 são idênticas umas às outras. Assim sendo, o descodificador tem uma memória de leitura apenas 197 ou uma memória de acesso aleatório ou geralmente qualquer memória 197 que guarda apenas um único conjunto de sequências de janelas ou de janelas para usar tanto no codificador como no descodificador. Isto é vantajoso pelo fato de os diferentes coeficientes de janela para as diferentes janelas não terem de ser guardados duas vezes, com um conjunto para o codificador e um conjunto para o descodificador. Em vez disso, pelo fato de conforme a presente invenção serem usadas janelas e sequências de janelas idênticas no codificador e no descodificador, apenas um conjunto de coeficientes de janela tem de ser guardado. Por conseguinte, a utilização da memória do dispositivo da invenção ilustrado na Fig. 1d é substancialmente reduzida relativamente a um conceito diferente, no qual o codificador e o descodificador têm diferentes janelas ou no qual se faz um certo pós-processamento com um processamento que não é o das operações de gestão de janelas.
[144] Posteriormente fez-se referência a outro modelo privilegiado relativamente ao modelo de mudança do comprimento de transformação/transformação.
[145] O esquema de codificação de comprimento adaptativo de transformação e sobreposição delineado acima foi implementado no caminho da excitação codificada da transformação (TCX) do codificador LD-USAC, uma variante de pouco atraso de xHE-AAC [5] com um comprimento de frame de 20 m, e testada a 48 kbit/s mono. Neste ponto de configuração, LD-USAC opera no modo TCX apenas com um comprimento do núcleo da frame de 512 amostras e uma sobreposição de transformação longa de 256 amostras, isto é 33%, durante as condições de entrada (pseudo)estacionárias. O codificador inclui uma unidade de detecção de transientes, cuja saída é introduzida em uma unidade de determinação do comprimento de transformação e na unidade de determinação da largura de sobreposição inventiva. Estão disponíveis três comprimentos de transformação para codificar: um comprimento de TCX-20 com 512 coeficientes MDCT, um comprimento de TCX-10 com 256 coeficientes MDCT e um comprimento especial de TCX-5 com 128 coeficientes MDCT. Correspondentemente, uma de três larguras de sobreposição pode ser utilizada e transmitida por frame: sobreposição máxima de 256 amostras de núcleo (10 m), meia sobreposição de 128 amostras de núcleo (5 m) e sobreposição mínima de 16 amostras (0,6 m). Para cada frame têm de ser selecionados os comprimentos de transformação, de modo a que a soma dos comprimentos de todas as transformações nessa seja igual ao comprimento da frame de núcleo, isto é, 512 amostras.
[146] Em um modelo privilegiado do sistema de codificação da invenção, o codificador opera do seguinte modo:
  • 1. A unidade de detecção de transientes identifica a presença e, se se aplicar, a localização do início do transiente mais forte na nova parte do sinal de uma certa frame (isto é, excluindo a zona de sobreposição entre a frame atual e a frame anterior). A resolução do índice que descreve a localização do transiente é 1/8 do comprimento da frame, portanto, a faixa do índice é 0, ..., 7.
  • 2. Se não for detectado nenhum transiente ou se o índice de localização do transiente for 6 ou 7, a frame afetada é codificada usando a transformação TCX-20 por decisão da unidade de determinação do comprimento de transformação. Caso contrário, é utilizada uma combinação de transformações TCX-10 e/ou TCX-5: ou 2x TCX-10 ou 4x TCX-5 ou TCX-10 seguida de 2x TCX 5 ou 2x TCX-5 seguida de TCX-10.
  • 3. A unidade de determinação da largura de sobreposição controla agora as formas de sobreposição das transformações usadas dentro da frame atual (excluindo a sobreposição já escolhida com a última frame) de acordo com os objetivos enumerados acima, de tal modo que são selecionadas as sobreposições mais longas possíveis que não violem esses objetivos. Em particular, se uma frame for TCX-20 e o índice de localização do transiente for 6 ou 7, a unidade de sobreposição devolve a sobreposição mínima ou a meia sobreposição, respetivamente. Se não estiver presente nenhum sinal não estacionário em uma frame, é utilizada a sobreposição máxima.
  • 4. Além disso, se uma combinação TCX-10/-5 foi devolvida pela unidade de determinação do comprimento de transformação para a frame (nãoestacionária), a unidade de determinação da largura de sobreposição controla a composição exata dos comprimentos de transformação nessa frame. Particularmente, se for utilizada a sobreposição máxima anteriormente, assim como, a frame atual, aplica-se 2x TCX-5 seguido de TCX-10 na frame atual, sendo a primeira das transformações TCX-5 a transformação de transição da invenção com sobreposição dupla. Se a largura de sobreposição da última frame ou da frame atual for inferior ao máximo, é também utilizada uma das configurações TCX-10/-5 misturadas. Se tanto a última como a atual frame tiverem uma sobreposição inferior ao mínimo, utiliza-se 4x TCX-5.
  • 5. O codificador procede agora à gestão de janelas do sinal e das atuais MDCTs para a frame. É preciso ter cuidado especial com a ordem das operações de gestão de janelas na presença da janela de transição de sobreposição dupla da invenção para obter uma perfeita reconstrução depois da descodificação. O remanescente do processo de codificação é idêntico ao de xHE-AAC. TNS é opcionalmente aplicado às transformações individuais e pode ser feito o agrupamento de dois conjuntos de coeficientes TCX-5 MDCT em um conjunto de coeficientes tipo TCX-10 (intercalado) para guardar a informação lateral. Para cada frame, é transmitido ao descodificador um valor da largura de sobreposição, assim como, uma bandeira de 1-bit que indica a codificação TCX-20 ou não TCX20.
[147] Tal como o codificador, o descodificador apropriado de acordo com o modelo privilegiado apresenta uma unidade de determinação da largura de sobreposição que interpreta os valores da largura de sobreposição transmitidos para controlar o comprimento e a gestão de janelas das MDCTs inversas, de modo a que o codificador e o descodificador estejam completamente sincronizados relativamente às transformações utilizadas. Tal como no codificador, a ordem do gerenciamento de janelas e das operações de dobrar depois das MDCTs individuais é fulcral para obter a reconstrução perfeita do sinal.
[148] Posteriormente um outro modelo da invenção é discutido e ilustrado no contexto das Figuras 8 a 15f. Este aspecto, que é também denominado de “aspecto de sobreposição múltipla" pode ser combinado com o modelo da mudança da largura de sobreposição e do comprimento de transformação que foi discutido relativamente às Figuras 1 a 7, ou pode ser implementado separadamente a partir deste aspecto.
[149] Um lado do codificador da invenção é ilustrado na Fig. 8a e um lado do descodificador é ilustrado na Fig. 8b. Em particular, o aparelho para criar um sinal codificado ou o codificador ilustrado na Fig. 8a compreende um controlador da sequência de janelas para criar uma informação da sequência de janelas 809 encaminhada, por exemplo, para o pré-processador 802, um conversor de espectro 804 ou uma interface de saída 810 conforme ilustrado na Fig. 8a. A informação da sequência de janelas indica uma primeira função da janela para criar uma primeira frame de valores espectrais, uma segunda função da janela e uma ou mais terceiras funções da janela para criar uma segunda frame de valores espectrais. A primeira função da janela, a segunda função da janela e a ou as terceiras funções da janela sobrepõem-se dentro de uma zona de sobreposição múltipla.
[150] Esta zona de sobreposição múltipla está, por exemplo, ilustrado em 1300 na Fig. 13 ou Fig. 14b ou Fig. 15e ou Fig. 15f. Assim sendo, nesta zona de sobreposição múltipla 1300, pelo menos três funções da janela, isto é, a primeira função da janela relativamente à Fig. 15f ilustrada em 1500, a segunda função da janela 1502 e a terceira função da janela 1503, sobrepõem-se umas às outras dentro da zona de sobreposição múltipla 1300. Pode haver também uma sobreposição mais alta, tal como uma sobreposição de quatro, cinco ou ainda mais janelas. Em alternativa, a Fig. 15e ilustra a situação em que mais uma vez há uma primeira função da janela 1500, a segunda função da janela 1502 mas agora quatro terceiras funções da janela 1503 ao contrário de uma única terceira função da janela 1503 da Fig. 15f.
[151] É fornecido um pré-processador 102 para manusear corretamente esta zona de sobreposição múltipla que resulta em uma redução significativa do atraso exigido para a zona de antecipação do transiente. O pré-processador esta configurado para gerir as janelas de um segundo bloco de amostras correspondente à segunda janela e às ou às terceiras funções da janela usando uma função auxiliar da janela para obter um segundo bloco de amostras em janela. Além disso, o pré-processador está configurado para pré-processar o segundo bloco de amostras em janelas usando uma operação de dobrar uma parte do segundo bloco que se sobrepõe com o primeiro bloco na parte de sobreposição múltipla para obter um segundo bloco pré-processado de amostras de janela com uma parte de sobreposição múltipla modificada. Além disso, um conversor de espectro 804 está configurado para aplicar uma transformação de introdução de distorção ao primeiro bloco de amostras usando a primeira janela para obter a primeira frame de valores espectrais. Além disso, o conversor de espectro está configurado para aplicar uma transformação de introdução de distorção em uma primeira parte do segundo bloco pré-processado das amostras em janela, usando a segunda função da janela para obter uma primeira parte de amostras espectrais de uma segunda frame, e para aplicar a transformação de introdução de distorção em uma segunda parte do segundo bloco préprocessado das amostras em janela, usando a uma ou mais terceiras funções da janela para obter uma segunda parte de amostras espectrais da segunda frame. Além disso, um processador 806 indicado como “processador de codificação” é fornecido dentro do codificador da Fig. 8a para processar a primeira frame e a segunda frame de valores espectrais para obter frames codificadas do sinal de áudio na saída 807 do bloco 806. Assim sendo, o processador de codificação pode ser idêntico ao ou diferente do processador de codificador 110 da Fig. 1a e pode realizar qualquer um dos conhecidos MPEG ou AMR ou qualquer outra característica de codificação na técnica.
[152] Faz-se depois referência à Fig. 13. A Fig. 13 mostra mais uma vez a segunda metade da primeira função da janela 1500, da segunda função da janela 1502 e, na segunda imagem da Fig. 13, duas terceiras funções da janela 1503. Contrariamente a isto, a ilustração superior na Fig. 13 mostra mais uma vez uma primeira função da janela 1500, uma segunda função da janela 1502 e, contrariamente por exemplo à Fig. 15f e ligeiramente similar à Fig. 15e, quatro terceiras funções da janela 1503. Em alternativa, o número de terceiras funções da janela pode ser também três, cinco ou mais.
[153] Além disso, a Fig. 13 ilustra ainda uma situação com uma diferente primeira função da janela 1500’, uma diferente segunda função da janela 1502’ e a mesma terceira função da janela 1503. A diferença entre 1500 e 1500’ é que o comprimento de sobreposição das funções 1500’ e 1502’ é metade relativamente às janelas 1500, 1502. Assim sendo, a situação das funções da janela 1500’ e 1502’ é que o comprimento da sobreposição é meia sobreposição ilustrada em 218, por exemplo na Fig. 2d, enquanto o comprimento de sobreposição total corresponde a uma frame completa como, por exemplo, é ilustrado em 203 na Fig. 2a ou Fig. 13. Por conseguinte, as funções da janela 1500’ e 1502’ ilustradas nesta figura representam uma combinação do aspecto de sobreposição múltipla e do aspecto da determinação da largura de sobreposição.
[154] Para explicar melhor o procedimento do pré-processador 802 no lado do codificador, faz-se referência à ilustração na Fig. 11a por um lado, e aos fluxogramas na Fig. 9a, 9b por outro lado. Relativamente ao descodificador, fazse referência às correspondentes ilustrações na Fig. 8b, Figuras 10a, 10b e à ilustração na Fig. 11b. Além disso, o codificado é também ilustrado na Fig. 12a e o descodificador é ilustrado na Fig. 12b.
[155] Em particular, a Fig. 11a ilustra mais uma veza primeira função da janela 1500 e pelo menos uma parte da segunda função da janela 1502 e ou quatro terceiras funções da janela 1503 ou uma única terceira função da janela 1503. Em particular, a Fig. 11a adicionalmente ilustra a função auxiliar da janela 1100. A função auxiliar da janela 1100 tem uma primeira parte 1100a que coincide com a primeira parte ascendente 1500a da primeira função da janela 1500. Além disso, a função auxiliar da janela 1100 tem uma segunda parte de não sobreposição 1100b preferencialmente tem coeficientes de janela iguais à unidade e uma terceira parte 1100c correspondente a uma parte direita descendente ou em queda da ou das terceiras funções da janela. Assim sendo, a função auxiliar da janela 1100 cobre a segunda metade da frame anterior ilustrada em 1102, sendo a primeira metade da frame atual i indicada por 1103, a segunda metade da frame atual i indicada por 1104 e a primeira pequena parte 1105 coberta pela parte da função auxiliar da janela 1100c. Tal como se torna claro na Fig. 11a, a função auxiliar da janela é tratada como uma “sequência de janelas inicial" ou corresponde a essa “sequência de janelas inicial”, como se na frame i + 1 tivesse de ser introduzida uma sequência de janelas curtas. É importante, porém, que uma sequência de janelas curtas já tenha sido introduzida na frame atual em vez de na frame que está a chegar i + 1.
[156] A funcionalidade do pré-processador é depois ilustrada na Fig. 11a. O pré-processador pré-processa o segundo bloco de amostras de janelas obtido pela gestão de janelas usando a função auxiliar da janela que usa uma votação na operação indicada como “distorção de dobrar inicial, frame i”. Assim sendo, a parte mais à esquerda do segundo bloco de amostras em janela indicada por 1110 é dobrada para dentro. Esta parte 1110 é a parte do segundo bloco de amostras em janela que se sobrepõem com a primeira função anterior da janela 1500, isto é, a parte do segundo bloco de amostras em janela correspondente ao período de tempo 1102 e que se situa na frame anterior i – 1. Pelo fato de esta operação de dobrar da parte 1110 influenciar agora a zona de sobreposição 1300, a operação de dobrar realizada pelo pré-processador resulta em uma parte de sobreposição múltipla modificada. Agora, o conversor de espectro aplica a operação ilustrada na linha da Fig. 11a indicada como “distorções de dobrar internas”. Em particular, o conversor de espectro aplica uma transformação de introdução de distorção ao primeiro bloco de amostras usando a primeira função da janela ilustrada para a frame i – 1. A transformação de introdução de distorção compreende a operação de dobrar ilustrada em 1120 e a subsequente, por exemplo, transformação DCT-IV indicada em 1122. Com esse fim, a primeira função da janela 1500 é exigida para obter a forma antes da operação de dobrar 1120 para a frame i – 1. Além disso, o conversor de espectro aplica-se à transformação de introdução de distorção à primeira parte indicada pelo item 1131 na Fig. 11a. Isto é feito usando a segunda função da janela 1502 e, em particular, a parte direita da segunda função da janela 1502. Esta operação resulta em uma primeira parte de amostras espectrais de uma segunda frame obtida por transformação 1132, em que a transformação 1132 mais uma vez representa uma operação DCT-IV que constitui, juntamente com a correspondente operação de dobrar, mas agora apenas na parte de sobreposição do lado direito do bloco 1131, a transformação de introdução de distorção.
[157] Além disso, o conversor de espectro está configurado para aplicar a transformação de introdução de distorção a uma segunda parte 1133 do segundo bloco pré-processado 1130 usando a ou as terceiras funções da janela 1503 para obter uma segunda parte 1135 das amostras espectrais da segunda frame. Assim sendo, para obter a segunda parte 1135 de amostras espectrais, podem ser aplicadas quatro N/8 transformações DCT-IV ou uma única N/2 transformação DCT-IV. O número ou as transformações e os comprimentos dependem do número das terceiras funções da janela. De um modo geral, o comprimento, a transformação ou o número de amostras espectrais na segunda parte 1135 é igual ao número de amostras espectrais em uma frame menos o comprimento da transformação 1132 e o resultado é depois dividido pelo número das terceiras funções da janela utilizadas.
[158] Assim sendo, o pré-processador 802 é geralmente operativo para gerir janelas 902 (Fig. 9a), em que o sinal de áudio usa a função auxiliar da janela 1100 para obter o segundo bloco de amostras em janela. De seguida, o processador 904 preferencialmente aplica a seguinte operação de dobrar indicada em 1110 na Fig. 11a para obter o segundo bloco pré-processado das amostras em janela com a parte de sobreposição múltipla modificada 1300. De seguida, o conversor 906 aplica as transformações usando a primeira, segunda e terceira funções da janela para obter a primeira frame de valores espectrais1122, a primeira parte 1132 da segunda frame e a segunda parte 1135 da segunda frame ou frame i na notação da Fig. 11a.
[159] No modelo privilegiado, ilustrado relativamente à Fig. 9b, a função auxiliar da janela é determinada 910 fazendo referência à primeira função da janela, e a título exemplificativo selecionando, como a primeira parte 1100a da função auxiliar da janela 1100, a primeira parte 1500a da primeira função da janela. Além disso, a parte de não sobreposição 1100b é determinada (os coeficientes da janela de um são considerados para o correspondente comprimento) e a terceira parte 1100c é depois determinada, novamente a título exemplificativo considerando a segunda parte da função da janela curta.
[160] De seguida, o sinal de áudio é gerenciado em janela 912 com esta função auxiliar da janela na correta relação com a frame anterior ou primeira i – 1 ilustrada na Fig. 11a. De seguida, conforme ilustrado em 914 na Fig. 9b, a parte esquerda 1110 e preferencialmente a parte direita 1111 são dobradas. No passo 916, sobram-se as partes de sobreposição, sendo isso ilustrado em linhas ponteadas no item e) ou f) na zona interior. Além disso, conforme é ilustrado em 918, se houver mais terceiras funções da janela como na Fig. 11a sub-imagem e), são também dobradas as partes de sobreposição das terceiras funções da janela. No entanto, se houver apenas só uma terceira função da janela conforme ilustrado na Fig. 11a, sub-imagem f), o controle prossegue a partir do passo 916 para 920 diretamente sem o passo 918. No passo 920, as operações DCT são realizadas usando os núcleos DCT mais curtos do que o núcleo DCT para a primeira frame. O núcleo DCT para a sub-imagem e) é N/2 para a segunda função da janela, e N/8 para as terceiras funções da janela. Contrariamente, quando existe apenas uma única terceira função da janela, o núcleo de transformação é igual a N/2 para a segunda função da janela e é igual a N/2 para a única terceira função da janela.
[161] Assim sendo, fica claro que a zona de sobreposição múltipla 1300 é gerenciada em janela duas vezes. A primeira gestão de janelas é feita pela primeira parte 1100a da janela auxiliar e a segunda gestão de janelas é realizada pela segunda metade da primeira terceira função da janela 1503 conforme é ilustrado na sub-imagem e) ou f) da Fig. 11a.
[162] Faz-se novamente referência à Fig. 13. Conforme discutido no contexto da Fig. 1a ou no contexto da Fig. 8a, o controlador da sequência de janelas cria as formas específicas da janela. Em um modelo, o controlador da sequência das janelas está configurado para compreender o detector de localização do transiente 106. Quando é detectado um transiente em partes de detecção de transientes 0 ou 1, o codificador é controlado para ir para o modo da parte de sobreposição múltipla, de modo a que estes transientes indicados em 1305 fiquem confinados apenas à única terceira janela ou a dois terceiras janelas adjacentes. Especificamente, o transiente esquerdo 1305 está confinado apenas à primeira função da janela curta, onde o transiente direito dos transientes 1305 está na primeira até às terceiras funções da janela. No entanto, quando é determinado que os transientes estão localizados em uma zona diferente de 0, tal como na zona 1, 2, 3 ou assim, pode ser realizado um processamento sem a zona de sobreposição múltipla, por exemplo, idêntico ao que foi discutido no contexto da Fig. 6a, Fig. 6b, Fig. 7 ou assim.
[163] Contrariamente a isso, porém, o processamento da zona de sobreposição múltipla pode ser também realizado no contexto da aplicação da mudança de janela, em que, quando é detectado um transiente, pode ser mudado um conjunto ainda maior de janelas curtas para a frame atual, de modo a que, preferencialmente dentro de um e do mesmo bloco ou grelha da frame, seja usada uma janela longa ou um número especificado de janelas curtas para gerir as janelas. A primeira janela corresponde à janela 1500, por exemplo na Fig. 13, a segunda janela corresponde à janela 1502 e é realizada uma mudança, sem fazer referência a uma certa localização do transiente, para um número das terceiras funções da janela apenas quando é detectado um transiente em qualquer parte da frame atual sem saber exatamente onde dentro da frame é que o transiente se encontra.
[164] No entanto, é preferível, para manter o número de terceiras funções da janela o mais pequeno possível, que a mudança para o modo da parte de sobreposição múltipla e a mudança adicional da seleção da sobreposição de transformação e do comprimento de transformação sejam realizadas em função da localização específica do transiente dentro da frame, isto é, em um ou preferencialmente em quatro ou até oito diferentes partes de uma frame ou de uma parte do tempo correspondente a uma frame, em que esta parte do tempo é depois igual a metade do tamanho de uma janela longa, tal como a janela longa 1500 da Fig. 13. Preferencialmente, a parte de sobreposição múltipla está, tal como pode ser visto na Fig. 13, localizada antes de um início 208 (ilustrado na Fig. 2 por um lado e na Fig. 13 por outro lado) da zona de antecipação.
[165] No lado do descodificador é realizado um processamento análogo. Em um modelo é exigido um aparelho para descodificar um sinal de áudio codificado 821, que compreende uma primeira frame codificada e uma segunda frame codificada, um processador de descodificação 824 da Fig. 8b, para processar a primeira frame codificada e a segunda frame codificada para obter uma primeira frame de valores espectrais e uma segunda frame de valores espectrais, compreendo a primeira e a segunda frames partes de distorção. Um conversor de tempo 826 está ligado ao processador descodificado 824 e o conversor de tempo 826 está configurado para aplicar uma transformação a esta primeira frame usando uma primeira função da janela para obter um primeiro bloco de amostras. Além disso, o conversor de tempo 826 está configurado para aplicar a transformação a uma primeira parte da segunda frame usando uma segunda função da janela, e para aplicar a transformação a uma segunda parte da segunda frame usando uma ou mais terceiras funções da janela para obter o segundo bloco de amostras. Conforme discutido no contexto da Fig. 1a, a primeira função da janela 1500, a segunda função da janela 1502 e a ou as terceiras funções da janela 1503 têm, em conjunto, uma zona de sobreposição múltipla 1300.
[166] Além disso, o descodificador compreende um pós-processador 828 para pós-processar o segundo bloco de amostras usando uma operação de desdobrar para obter um segundo bloco pós-processado de amostras com uma parte do segundo bloco de amostras a sobrepor-se ao primeiro bloco de amostras na zona de sobreposição múltipla. Além disso, o pós-processador 828 está configurado para gerir as janelas do segundo bloco pós-processado de amostras usando a função auxiliar da janela discutida no contexto da Fig. 8a e da Fig. 11a. O pós-processador 828 realiza uma adição de sobreposição do segundo bloco pós-processado em janela das amostras e do primeiro bloco de amostras para obter o sinal de áudio descodificado indicado em 829 da Fig. 8b ou no bloco 175 da Fig. 1c. Assim sendo, basicamente o pós-processador 828 da Fig. 8b pode ter a funcionalidade do gerenciador de janelas de síntese 172 relativamente á função auxiliar da janela e ao adicionador de sobreposição 174.
[167] Posteriormente a funcionalidade do pós-processador em colaboração com o conversor de tempo é discutida relativamente à ilustração da Fig. 11b, que ilustra um processamento inverso relativamente à ilustração do codificador da Fig. 11a. A primeira frame de valores espectrais 1142 é introduzida em uma transformação inversa de tamanho N 1161 e a primeira parte 1152 da segunda frame é introduzida em uma transformação inversa N/2 1162 e dependendo do número das terceiras funções da janela, a segunda parte 1155 da segunda frame é introduzida em quatro N/8 transformações curtas 1163 ou em uma única N/2 transformação 1162 idêntico ao processo da primeira parte 1152 da segunda frame.
[168] Este procedimento é realizado pelo conversor de tempo. O conversor de tempo adicionalmente usa a primeira função da janela para realizar a gestão de janelas em conjunto com uma operação de desdobrar prévia ilustrada em 1170 na Fig. 11b. Além disso, a segunda função da janela é usada quando se aplicam os procedimentos à primeira parte 1152 ilustrada em 1172. Especificamente, desdobra-se especificamente a parte mais à direita 1173 da segunda função da janela e realiza-se a segunda gestão posterior de janelas, enquanto, no lado esquerdo da frame não se procede a nenhuma desdobragem interna. Além disso, a transformação realiza uma desdobragem específica e uma posterior gestão de janelas e uma adicional adição de sobreposição não apenas com a primeira parte 1152 da segunda frame, mas também com a segunda parte 1155 da segunda frame conforme ilustrado em 1172 na Fig. 11b. Se houver apenas uma única terceira função da janela ilustrada na sub-imagem f) na Fig. 11b, realiza-se apenas uma única operação de desdobrar de ambos os lados juntamente com a gestão de janelas, usando a parte direita da segunda função da janela e o lado esquerdo da terceira função da janela e a posterior adição de sobreposição dentro da faixa de sobreposição 1174.
[169] De seguida, o pós-processador aplica o pós-processamento usando a operação de desdobrar ilustrada em 1175 com a primeira parte do resultado do procedimento em 1172 para obter uma parte 1176a que se estende na frame anterior e preferencialmente 1176b que se estende na frame seguinte. De seguida, é realizada a gestão de janelas com a parte desdobrada 1176a, 1176b e claro com a parte dentro da frame atual i usando a função auxiliar da janela para obter o estado ilustrado em 1175. De seguida, é feita uma adição final de sobreposição da função auxiliar da janela do segundo bloco pós-processado de amostras e do primeiro bloco de amostras em e dentro da faixa de sobreposição 1180 para obter o sinal de áudio descodificado final correspondente a esta faixa de sobreposição 1180. Além disso, este procedimento adicionalmente resulta em uma parte subsequente das amostras de sinal de áudio descodificado 1181 pelo fato de não haver sobreposição e a próxima seção 1182 é obtida pela sobreposição com a correspondente parte de uma função da janela para a frame i + 1, seguindo a frame i no tempo.
[170] Assim sendo, conforme ilustrado na Fig. 10a, o método do lado do descodificador compreende aplicar 1000 uma transformação à primeira frame usando a primeira função da janela e aplicar 1010 a transformação à primeira parte da segunda frame usando a segunda função da janela e aplicar 1020 a transformação à segunda parte da segunda frame usando a(s) terceira(s) função/funções da janela. De seguida, no passo 1030 é realizada uma operação de desdobrar e no passo 1040 é realizada uma gestão de janelas usando a função auxiliar da janela, no passo 1050 é realizada uma adição de sobreposição do segundo e do primeiro bloco pós-processado em janela para obter o sinal de áudio descodificado no fim do processamento ilustrado, por exemplo, na Fig. 11b.
[171] Conforme ilustrado na Fig. 10b, os modelos privilegiados compreendem realizar uma operação DCT inversa para cada parte da segunda frame, isto é, realizar várias operações DCT com comprimentos mais curtos relativamente à anterior frame i – 1, onde foi usada uma janela longa 1500. No passo 1070 as partes de distorção internas são desdobradas como a operação ilustrada em 1172 e a desdobragem é preferencialmente um espelho no correspondente limite ilustrada como linhas verticais na linha indicada por 1172 na Fig. 11b. De seguida, no passo 1080, é feita uma gestão de janelas usando a segunda e terceira funções da janela dentro do bloco 1184 e é feita a subsequente adição de sobreposição do resultado da gestão de janelas dentro do bloco conforme ilustrado em 1090. De seguida, tal como é indicado em 192, as partes de distorção esquerda/direita ou, por outras palavras, anterior/posterior do resultado de adição de sobreposição são desdobradas para obter as partes 1176a que se estendem na frame anterior e a parte 1176b que se estende na seguinte frame. Porém, a representação em 1175 é apenas depois da gestão de janelas, usando a função auxiliar da janela ilustrada em 1094. De seguida, no passo 1906, é feita uma adição de sobreposição com o primeiro bloco de amostras depois da gestão de janelas usando a função auxiliar da janela.
[172] Posteriormente faz-se referência à Fig. 12a e Fig. 12b. O item a na Fig. 12a corresponde ao procedimento na primeira linha da Fig. 11a. O procedimento na sub-imagem b) corresponde ao procedimento realizado na segunda e terceira linhas da Fig. 11a e os procedimentos ilustrados no item c) na Fig. 12a correspondem aos procedimentos nas duas últimas linhas da Fig. 11a. De forma análoga, a representação do lado do descodificador corresponde à Fig. 12b. Em particular, as duas primeiras linhas da Fig. 11b correspondem à sub-imagem f) na Fig. 12b. A terceira e quarta linhas correspondem ao item e) na Fig. 12b, e a última linha na Fig. 12b corresponde à última linha na Fig. 11b.
[173] A Fig. 14a ilustra uma situação em que o controlador da sequência de janelas no lado do codificador ou os elementos 824, 826, 828 do lado do descodificador estão configurados para alternar entre uma situação de sobreposição não múltipla como na Fig. 14a e uma situação de sobreposição múltipla ilustrada na Fig. 14b. Assim sendo, quando um transiente é detectado na parte de transientes 0, um procedimento é não aplicar a parte de sobreposição múltipla mas sim mudar para janelas curtas de sobreposição única TCX-10 a partir das janelas TCX-20. Preferencialmente, no entanto, muda-se para uma parte de sobreposição múltipla aplicando uma sequência de janelas que compreende a primeira janela 1400, a segunda janela 1402 e uma ou, no modelo da Fig. 14b, duas terceiras janelas 1403.
[174] As sobreposições e os tamanhos da janela da Fig. 14b são um pouco diferentes da ilustração na Fig. 13, mas fica claro que os procedimentos gerais relativamente ao lado do codificador na Fig. 11a ou ao lado do descodificador na Fig. 11b ocorrem do mesmo modo.
[175] Posteriormente é discutida a Fig. 15. Especificamente, a Fig. 15 ilustra, tal como as caixas pretas, uma antecipação da detecção do transiente 1590 e a duração do pré-eco resultante 1595. A Fig. 15a ilustra uma tradicional sequência de Alta Eficiência tipo AAC que compreende uma janela inicial longa, oito janelas curtas, uma janela de parar longa e assim por diante. A antecipação exigida é alta e chega a N + N/2 + N/16, mas o pré-eco 1595 é pequeno. De forma análoga, a Fig. 15b ilustra um tradicional procedimento de detecção do transiente tipo AAC de pouco atraso resultante em uma sequência de janelas que compreende uma longa sequência, uma janela inicial longa, uma janela de sobreposição baixa e uma janela de parar longa. A antecipação da detecção de transientes é a mesma da Fig. 15a, mas a duração do pré-eco é maior do que na Fig. 15a. Por outro lado, porém, a eficiência é superior pelo fato de quanto mais janelas curtas se usarem menor é a eficiência da taxa de bits.
[176] A Fig. 15c e 15d ilustra uma implementação da AAC de Alta Eficiência ou um procedimento de pouco atraso AAC com uma antecipação reduzida da detecção de transientes de N/16 amostras e são apenas apresentadas as sequências longas possíveis com uma antecipação reduzida da detecção do transiente de N/16 amostras. Se a sequência consistir de uma janela longa, uma janela longa, uma janela inicial longa, uma janela de parar longa, e assim por diante, conforme ilustrado na Fig. 15d, apenas o pós-eco é reduzido comparativamente com a Fig. 15c, mas o pré-eco 1595 é o mesmo. Por conseguinte, a Fig. 15c, d, ilustra uma antecipação curta idêntica às Figuras 15e e 15f da invenção. Se implementássemos agora a parte da sobreposição múltipla como nas Figuras 15c e 15e, só se podiam usar sequências como as nessas figuras, mas não seria possível nenhuma mudança para uma janela curta. Assim sendo, a parte de sobreposição múltipla permite mudar para janelas curtas para reduzir o pré-eco e o pós-eco, ou para usar um atraso de antecipação curto ou ambas as características para reduzir o atraso e para reduzir o pré-eco e o póseco.
[177] A Fig. 15e ilustra uma sequência AAC de Alta Eficiência com uma antecipação reduzida da detecção de transiente de N/16 amostras e da zona de sobreposição múltipla preferida 1300. A sequência compreende uma janela longa, outra janela longa 1500, outra sequência inicial 1502, quatro sequências curtas 1503 e uma janela de parar longa 1504. Tal como fica claro, a antecipação é pequena, tal como é o pré-eco. Uma situação similar é obtida para Fig. 15f ilustrando uma configuração similar da na Fig. 15e, mas com, apenas uma única terceira função da janela em vez de quatro sequências curtas.
[178] Apesar de a presente invenção ter sido descrita no contexto de diagramas de bloco, em que os blocos representam componentes de hardware atuais ou lógicos, a presente invenção pode ser também implementada por um método implementado por computador. No último caso, os blocos representam correspondentes passos do método, em que estes passos estão para as funcionalidades realizadas por correspondentes blocos de hardware lógicos ou físicos.
[179] Apesar de alguns aspectos terem sido descritos no contexto de um aparelho, é claro que estes aspectos também representam uma descrição do correspondente método, em que um bloco ou dispositivo corresponde a um passo de método ou a uma característica de um passo de método. De modo análogo, os aspectos descritos no contexto de um passo de método também representam uma descrição de um correspondente bloco ou item ou característica de um correspondente aparelho. Alguns ou todos os passos do método podem ser executados (ou usados) por um aparelho de hardware, com por exemplo, um microprocessador, um computador programável ou um circuito eletrónico. Em algumas versões, um ou mais dos mais importantes passos do método podem ser executados por um aparelho destes.
[180] O sinal transmitido ou codificado da invenção pode ser guardado em um meio de armazenamento digital ou pode ser transmitido em um meio de transmissão, tal como um meio de transmissão sem fios ou um meio de transmissão com fios, tal como a Internet.
[181] Dependendo de certos requisitos de implementação, os modelos da invenção podem ser implementados em hardware ou em software. A implementação pode ser realizada usando um meio de armazenamento digital, por exemplo uma disquete, um DVD, um Blu-Ray, um CD, um ROM, um PROM, um EPROM, um EEPROM ou uma memória FLASH, com sinais de controle de leitura eletrónica guardados lá, que cooperam (ou são capazes de cooperar) com um sistema de computador programável, de modo a que seja executado o respetivo método. Por isso, o meio de armazenamento digital pode ser lido em computador.
[182] Algumas versões de acordo com a invenção compreendem um suporte de dados com sinais de controle de leitura eletrónica, que são capazes de cooperar com um sistema de computador programável, de modo a que seja executado um dos métodos aqui descritos.
[183] De um modo geral, os modelos da presente invenção podem ser implementados como um produto de programa de computador com um código de programa, sendo o código de programa operativo para executar um dos métodos quando o produto do programa de computador corre em um computador. O código de programa pode, por exemplo, ser guardado em um suporte de leitura em máquina.
[184] Outros modelos compreendem o programa de computador para executar um dos métodos aqui descritos, guardados em um suporte de leitura em máquina.
[185] Por outras palavras, um modelo do método da invenção é, por isso, um programa de computador com um código de programa para executar um dos métodos aqui descritos, quando o programa de computador corre em um computador.
[186] Outro modelo do método da invenção é, por isso, um suporte de dados (ou um suporte de armazenamento não transitório, tal como um suporte de armazenamento digital, ou um suporte de leitura em computador) compreendendo, aí gravados, o programa de computador para executar um dos métodos aqui descritos. O suporte de dados, o suporte de armazenamento digital ou o suporte gravado são tipicamente tangíveis e/ou não transitórios.
[187] Outro modelo do método da invenção é, por isso, um fluxo de dados ou uma sequência de sinais que representam o programa de computador para executar um dos métodos aqui descritos. O fluxo de dados ou a sequência de sinais pode, por exemplo, ser configurado para ser transferido através de uma ligação de comunicação de dados, por exemplo via Internet.
[188] Outro modelo compreende um meio de processamento, por exemplo, um computador, ou um dispositivo lógico programável, configurado ou adaptado para executar um dos métodos aqui descritos.
[189] Outro modelo compreende um computador com o programa de computador instalado para executar um dos métodos aqui descritos.
[190] Outra versão de acordo com a invenção compreende um aparelho ou um sistema configurado para transferir (por exemplo, eletronicamente ou opticamente) um programa de computador para executar um dos métodos aqui descritos para um recetor. O recetor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou idêntico. O aparelho ou sistema pode, por exemplo, compreender um servidor de ficheiros para transferir o programa de computador para o recetor.
[191] Em alguns modelos, pode ser utilizado um dispositivo programável lógico (por exemplo uma rede de portas lógicas programáveis) para executar algumas ou todas as funcionalidades dos métodos aqui descritos Em alguns modelos, uma rede de portas lógicas programáveis pode cooperar com um microprocessador para executar um dos métodos aqui descritos. De um modo geral, os métodos são preferencialmente executados por qualquer aparelho de hardware.
[192] Os modelos acima descritos são meramente ilustrativos para os princípios da presente invenção. Compreende-se que as modificações e variações das disposições e dos detalhes descritos serão evidentes aos profissionais da matéria. Pretende-se, por isso, que seja limitado apenas pelo âmbito das reivindicações impendentes da patente e não pelos detalhes específicos da descrição e explicação dos modelos aqui constantes.
[193] Referências
  • [1] Organização Internacional da Padronização, ISO/IEC 14496-3 2009, "Tecnologia da Informação – Codificação de objetos de áudio-visuais – Parte 3 Áudio," Genebra, Suíça, Ago. 20096.
  • [2] Grupo de Missão de Engenharia de Internet (IETF), RFC 6716, "Definição do Codec de Áudio Opus," Padrão Proposto, Set. 2012. Disponível online em http://tools.ietf.org/html/rfc6716.
  • [3] C. R. Helmrich, "Sobre o Uso de Somas de Senos nas Janelas de Sinais," em Proc. Da 13.ª Conferência Int. Sobre Efeitos de Áudio Digitais (DAFx-10), Graz, Áustria, Set. 2010.
  • [4] J. Herre e J. D. Johnston, "Melhorar o Desempenho dos Codificadores de Áudio Percetuais Usando Modulação de Ruído Temporal (TNS)," em Proc. 101.ª Convenção AES, LA, EUA, Nov. 1996
  • [5] M. Neuendorf et al., "MPEG Discurso Unificado e Codificação de Áudio – O Padrão ISO/MPEG para a Codificação de Áudio de Alta Eficiência de Todos os Tipos de Conteúdos," em Proc 132.ª Convenção de AES, Budapeste, Hungria, Abr. 2012. Também para aparecer no Diário do AES, 2013.

Claims (33)

  1. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, caracterizado por compreender:
    um controlador da sequência de janelas (808) para criar uma informação da sequência de janelas (809) para gerir as janelas de um sinal de áudio ou imagem, a informação da sequência de janelas indicando uma primeira função da janela (1500) para criar uma primeira frame de valores de espectrais, uma segunda função da janela (1502) e pelo menos uma terceira função da janela (1503) para criar uma segunda frame de valores espectrais com uma primeira e uma segunda parte, em que a primeira função da janela (1500), a segunda função da janela (1502) e a ou mais terceiras funções da janela se sobrepõem dentro de uma zona de sobreposição múltipla (1300);
    um pré-processador (802) para gerir as janelas (902) de um segundo bloco de amostras correspondentes à segunda função da janela e a uma ou mais terceira(s) função/funções da janela, usando uma função auxiliar da janela (1100) para obter um segundo bloco de amostras em janela, e para préprocessar (904) o segundo bloco de amostras em janela, usando uma operação de dobrar uma parte do segundo bloco que se sobrepõe com um primeiro bloco na parte de sobreposição múltipla (1300) para obter um segundo bloco préprocessado das amostras em janela com uma parte de sobreposição múltipla modificada;
    um conversor de espectro (804) para aplicar uma transformação de introdução de distorção (906) para o primeiro bloco de amostras usando a primeira função da janela (1500) para obter a primeira frame de valores espectrais, para aplicar outra transformação de introdução de distorção em uma primeira parte do segundo bloco pré-processado de amostras em janela usando a segunda função da janela (1502) para obter uma primeira parte dos valores espectrais da segunda frame, e para aplicar outra ou outras transformações de introdução de distorção em uma segunda parte do segundo bloco préprocessado das amostras em janela, usando uma ou mais terceiras funções da janela (1503) para obter uma segunda parte de valores espectrais da segunda frame; e
    um processador (806) para processar a primeira frame e a segunda frame para obter frames codificadas do sinal de áudio ou imagem.
  2. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com a reivindicação 1,
    caracterizado por a segunda função da janela (1502) possuir uma primeira parte (1100a) que se sobrepõe com a primeira função da janela (1500),
    em que uma ou mais terceiras funções da janela (1503) terem uma segunda parte (1111) que se sobrepõe com uma quarta função da janela a seguir a uma ou mais terceira(s) função/funções da janela (1503), e
    em que o pré-processador (802) esta configurado para aplicar a função auxiliar da janela (1100), a função auxiliar da janela possuindo uma primeira parte (1100a) idêntica à primeira parte da segunda função da janela e possui uma terceira parte (1100c) idêntica à segunda parte de uma ou mais terceiras funções da janela, em que uma segunda parte da função auxiliar da janela se estende entre a primeira parte e a terceira parte.
  3. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com a reivindicação 2,
    caracterizado por a função auxiliar da janela possuir a segunda parte (1100b) correspondente a uma segunda parte de uma ou mais terceiras funções da janela (1503), ou
    em que a segunda parte (1100b) tem coeficientes de janela superiores a 0,9 ou por ser unidade, ou
    em que o comprimento da segunda parte é de tal modo que o segundo bloco pré-processado de amostras em janela resulta em um número de valores espectrais idêntico ao número de valores espectrais na primeira frame.
  4. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 3,
    caracterizado por o controlador da sequência de janelas (808) estar configurado para criar a informação da sequência de janelas (809), de tal modo que a segunda função da janela (1502) ou a ou as terceiras funções da janela (1503) têm um tamanho ou duração inferior ao tamanho ou duração da primeira função da janela (1500).
  5. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 4,
    caracterizado por o pré-processador (802) estar configurado para usar, como a função auxiliar da janela, uma função inicial da janela (1100) tal que um número de valores espectrais derivado por transformar o segundo bloco de amostras em janela para obter a segunda frame é igual a um número de valores espectrais da primeira frame.
  6. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 5,
    caracterizado por o conversor de espectro (804) estar configurado para gerir as janelas do primeiro bloco de amostras usando a primeira função da janela para obter um primeiro bloco de amostras em janela e para aplicar a transformação de introdução de distorção no primeiro bloco de amostras em janela.
  7. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 6,
    caracterizado por o conversor de espectro (804) estar configurado para gerir as janelas da primeira parte do segundo bloco pré-processado usando uma segunda parte da segunda função da janela, em que uma primeira parte da segunda função da janela não é usada para gerir janelas, e para aplicar a transformação de introdução de distorção a uma primeira parte em janelas do segundo bloco pré-processado.
  8. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 7,
    caracterizado por o conversor de espectro (804) estar configurado para gerir as janelas da segunda parte do segundo bloco pré-processado usando uma ou mais terceiras funções da janela, exceto uma segunda parte da terceira função da janela ou uma segunda parte de uma terceira função da janela mais tardia em termos de tempo ou espaço.
  9. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 8,
    caracterizado por o pré-processador (802) estar configurado para realizar, na operação de dobrar, uma inversão de tempo ou espaço da parte e a adição pesada de uma parte invertida do tempo ou espaço para uma parte, para a qual a parte do segundo bloco foi dobrada.
  10. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 9,
    caracterizado por o pré-processador (802) estar configurado para adicionalmente usar uma outra operação de dobrar uma parte do segundo bloco que se sobrepõe com a quarta função da janela a seguir a uma ou mais terceiras funções da janela no tempo ou no espaço para obter o segundo bloco préprocessado das amostras em janela.
  11. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 10,
    caracterizado por o conversor de espectro (804) estar configurado para realizar uma operação de transformação de cosseno discreta modificada (MDCT) ou uma operação de transformação do seno discreto modificado (MDST).
  12. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 11,
    caracterizado por o conversor de espectro (804) estar configurado para realizar a operação MDCT ou MDST aplicando uma operação de dobrar para reduzir um número de amostras e uma posterior operação de transformação de cosseno discreta ou de transformação de seno discreto sobre o número reduzido de amostras.
  13. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 12,
    caracterizado por o controlador da sequência de janelas (808) compreender um detector de transiente (106) para detectar uma localização do transiente em uma zona de antecipação da primeira frame, e em que o controlador da sequência de janelas (808) está configurado para criar a informação da sequência de janelas (809) em resposta a uma detecção de uma localização de transiente na zona de antecipação ou em uma parte específica da zona de antecipação, e
    em que o controlador da sequência de janelas (808) esta configurado para criar outra informação da sequência indicando uma sequência das primeiras janelas de sobreposição, quando o transiente não é detectado na zona de antecipação ou é detectado em uma parte da zona de antecipação diferente da parte específica.
  14. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações de 1 a 13,
    caracterizado por a parte específica ser um quarto de um início de um centro da frame atual.
  15. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações 13 ou 14,
    caracterizado por a parte de sobreposição múltipla se encontrar, no tempo e no espaço, antes do início da zona de antecipação, ou em uma parte da zona de antecipação, na primeira frame.
  16. Aparelho para criar um sinal de áudio ou de imagem codificado na presença de transientes, de acordo com qualquer uma das reivindicações 13 ou 14,
    caracterizado por o controlador da sequência de janelas (808) estar configurado para selecionar uma janela específica de um grupo de pelo menos três janelas dependendo da localização do transiente (107), o grupo de pelo menos três janelas compreendo uma primeira janela (201) com um primeiro comprimento de sobreposição (203), uma segunda janela (225) com um segundo comprimento de sobreposição (218) e uma terceira janela (222) com um terceiro comprimento de sobreposição (229) ou sem sobreposição, em que o primeiro comprimento de sobreposição é maior do que o segundo comprimento de sobreposição e em que o segundo comprimento de sobreposição é maior do que o terceiro comprimento de sobreposição ou maior do que uma sobreposição zero, em que a janela específica é selecionada com base na localização do transiente, de modo que uma de duas janelas de sobreposição consecutivas tem primeiros coeficientes de janela na localização do transiente e a outra das duas janelas de sobreposição consecutivas tem segundos coeficientes de janela na localização do transiente, em que os segundos coeficientes de janela são pelo menos nove vezes maiores do que os primeiros coeficientes de janela.
  17. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, que engloba uma primeira frame codificada e uma segunda frame codificada, caracterizado por compreender:
    um processador (824) para processar a primeira frame codificada e a segunda frame codificada para obter uma primeira frame de valores espectrais e uma segunda frame de valores espectrais, a primeira e a segunda frames compreendendo uma parte de distorção;
    um conversor de tempo (826) para aplicar uma transformação na primeira frame de valores espectrais usando uma primeira função da janela (1500) para obter um primeiro bloco de amostras, para aplicar outra transformação a uma primeira parte da segunda frame de valores espectrais usando uma segunda função da janela (1502), e para aplicar outra ou mais transformações em uma segunda parte da segunda frame de valores espectrais usando uma ou mais terceiras funções da janela (1503) para obter um segundo bloco de amostras,
    em que a primeira função da janela (1500), a segunda função da janela (1502) e a terceira função da janela formarem uma zona de sobreposição múltipla (1630); e
    um pós-processador (828) para pós-processar o segundo bloco de amostras usando uma operação de desdobrar para obter um segundo bloco pósprocessado de amostras com uma parte do segundo bloco de amostras a sobrepor-se ao primeiro bloco de amostras na zona de sobreposição múltipla, para gerir as janelas do segundo bloco pós-processado de amostras usando uma função auxiliar da janela (1100), e para fazer a adição de sobreposição do segundo bloco pós-processado em janela de amostras e do primeiro bloco de amostras para obter um sinal de áudio ou de imagem descodificado (1180).
  18. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com a reivindicação 17,
    caracterizado por a aplicação da transformação compreender realizar uma adição de sobreposição (1172) de uma primeira parte do segundo bloco de amostras e de uma segunda parte do segundo bloco de amostras para obter o segundo bloco de amostras.
  19. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com a reivindicação 18,
    caracterizado por a operação de desdobrar compreender espelhar amostras relativamente a um limite do segundo bloco de amostras.
  20. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com as reivindicações de 17 a 19,
    caracterizado por o conversor de tempo (826) estar configurado para usar exatamente uma terceira função da janela (1503) e um comprimento da terceira função da janela é tal que um número de valores espectrais igual a 50% do número de valores espectrais da primeira frame é transformado e um resultado é visualizado em janela através da terceira função da janela, ou em que o conversor de tempo está configurado para usar exatamente duas terceiras janelas e um comprimento da terceira janela é tal que um número de valores espectrais igual a 1/8 do número de valores espectrais da primeira frame é transformado, ou em que o conversor de tempo está configurado para usar exatamente uma terceira janela e o comprimento da terceira janela é tal que um número de valores espectrais igual a 1/4 do número de valores espectrais da primeira frame é transformado, ou para usar exatamente quatro terceiras janelas e o comprimento de uma terceira janela é tal que um número de valores espectrais é igual a 1/8 do número de valores espectrais da primeira frame.
  21. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 20,
    caracterizado por o sinal de áudio ou de imagem codificado compreende uma indicação de janela (603) associada à primeira e à segunda frames codificadas,
    em que o aparelho ainda compreende uma interface (820) para extrair e analisar a indicação da janela; e
    em que o conversor de tempo ou o pós-processador (828) estão configurados para serem controlados pela indicação da janela para aplicar uma forma de janela ou um comprimento de janela ou comprimento de transformação indicado.
  22. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 21,
    caracterizado por a segunda função da janela (1502) ter uma primeira parte (1100a) que se sobrepõe com a primeira função da janela (1500), em que a ou as terceiras funções da janela tem uma segunda parte (1111) que se sobrepõe com uma quarta função da janela a seguir a uma ou mais terceiras funções da janela (1503), e em que o pós-processador está configurado para aplicar a função auxiliar da janela (1100), a função auxiliar da janela possuindo uma primeira parte (1100a) idêntica à primeira parte da segunda função da janela, e possuindo uma terceira parte (1100c) idêntica à segunda parte de uma ou mais terceiras funções da janela, em que a segunda parte da função auxiliar da janela se estende entre a primeira parte e a terceira parte.
  23. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 22,
    caracterizado por a função auxiliar da janela ter a segunda parte (1100b) correspondente a uma segunda parte de uma ou mais terceiras funções da janela (1503), ou em que a segunda parte (1100b) tem coeficientes de janela maiores do que 0.9 ou que são unidade, ou em que o comprimento da segunda parte é tal que o segundo bloco pré-processado de amostras em janela resulte em um número de valores espectrais idênticos ao número de valores espectrais na primeira frame.
  24. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 23,
    caracterizado por a informação da sequência de janelas (809) ser tal que a segunda função da janela (1502) ou uma ou mais terceiras funções da janela (1503) têm um tamanho ou duração inferior ao tamanho ou duração da primeira função da janela (1500).
  25. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 23,
    caracterizado por o pós-processador estar configurado para usar, como a função auxiliar da janela, uma função inicial da janela (1100) tal que um número de valores espectrais derivado por transformar o segundo bloco de amostras em janela para obter a segunda frame é igual a um número de valores espectrais da primeira frame.
  26. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 24,
    caracterizado por o conversor de tempo estar configurado para adicionar sobreposições da primeira parte do segundo bloco de amostras e uma segunda parte do segundo bloco de amostras usando uma segunda parte da segunda função da janela, em que uma primeira parte da segunda função da janela não é usada.
  27. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 26,
    caracterizado por o conversor de tempo estar configurado para realizar uma adição de sobreposições da primeira parte do segundo bloco de amostras usando uma ou mais terceiras funções da janela, exceto uma segunda parte de uma terceira função da janela ou uma segunda parte de uma terceira função da janela mais tardia em termos de tempo ou espaço.
  28. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 27,
    caracterizado por o pós-processador estar configurado para adicionalmente usar uma outra operação de dobrar de uma parte do segundo bloco que se sobrepõe com a quarta função da janela a seguir a uma ou mais terceiras funções da janela no tempo ou no espaço.
  29. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 28,
    caracterizado por o conversor de tempo estar configurado para aplicar a transformação usando uma operação DCT inversa ou DST inversa e uma subsequente operação de desdobrar.
  30. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 29,
    caracterizado por o conversor de tempo estar configurado para aplicar a transformação de modo que o transiente do sinal de áudio ou imagem descodificado esteja localizado no tempo ou espaço depois da zona de sobreposição múltipla ou esteja localizado em uma parte do tempo ou espaço não coberta pela segunda função da janela.
  31. Aparelho para descodificar um sinal codificado de áudio ou de imagem na presença de transientes, de acordo com qualquer uma das reivindicações de 17 a 30,
    caracterizado por a primeira parte da segunda frame compreender n/2 valores espectrais e a segunda parte da segunda frame compreender quatro blocos com n/8 valores espectrais ou um único bloco com n/2 valores espectrais ou dois blocos para valores espectrais.
  32. Método para criar um sinal de áudio ou de imagem codificado na presença de transientes, caracterizado por compreender:
    criar (808) uma informação da sequência de janelas (809) para gerir as janelas de um sinal de áudio ou imagem, a informação da sequência de janelas indicando uma primeira função da janela (1500) para criar uma primeira frame de valores de espectrais, uma segunda função da janela (1502) e pelo menos uma terceira função da janela (1503) para criar uma segunda frame de valores espectrais com uma primeira e uma segunda parte, em que a primeira função da janela (1500), a segunda função da janela (1502) e a ou mais terceiras funções da janela se sobrepõem dentro de uma zona de sobreposição múltipla (1300);
    gerir as janelas (902) de um segundo bloco de amostras correspondente à segunda função da janela e a uma ou mais terceiras funções da janela usando uma função auxiliar da janela (1100) para obter um segundo bloco de amostras em janela,
    pré-processar (904) o segundo bloco de amostras de janelas usando uma operação de dobrar de uma parte do segundo bloco que se sobrepõe com o primeiro bloco na parte de sobreposição múltipla (1300) para obter um segundo bloco pré-processado de amostras em janela com uma parte de sobreposição múltipla modificada;
    aplicar (804) uma transformação de introdução de distorção (906) no primeiro bloco de amostras usando a primeira função da janela (1500) para obter a primeira frame de valores espectrais, aplicando outra transformação de introdução de distorção em uma primeira parte do segundo bloco pré-processado de amostras em janela usando a segunda função da janela (1502) para obter uma primeira parte dos valores espectrais da segunda frame, e para aplicar outra ou mais transformações de introdução de distorção em uma segunda parte do segundo bloco pré-processado das amostras em janela, usando a uma ou mais terceiras funções da janela (1503) para obter uma segunda parte de amostras espectrais da segunda frame; e
    processar (806) a primeira frame e a segunda frame para obter frames codificadas do sinal de áudio ou imagem.
  33. Método para descodificar um sinal de áudio ou de imagem codificado na presença de transientes, que engloba uma primeira frame codificada e uma segunda frame codificada, caracterizado por compreender:
    processar (824) a primeira frame codificada e a segunda frame codificada para obter uma primeira frame de valores espectrais e uma segunda frame de valores espectrais, a primeira e a segunda frames compreendendo uma parte de distorção;
    aplicar (826) uma transformação na primeira frame de valores espectrais usando uma primeira função da janela (1500) para obter um primeiro bloco de amostras, aplicando outra transformação a uma primeira parte da segunda frame de valores espectrais usando uma segunda função da janela (1502), e aplicando outra ou mais transformações em uma segunda parte da segunda frame de valores espectrais usando uma ou mais terceiras funções da janela (1503) para obter um segundo bloco de amostras,
    em que a primeira função da janela (1500), a segunda função da janela (1502) e a terceira função da janela formam uma zona de sobreposição múltipla (1630); e
    pós-processar (828) o segundo bloco de amostras usando uma operação de desdobrar para obter um segundo bloco pós-processado de amostras com uma parte do segundo bloco de amostras a sobrepor-se ao primeiro bloco de amostras na zona de sobreposição múltipla, gerindo as janelas do segundo bloco pós-processado de amostras usando uma função auxiliar da janela (1100), e fazendo a adição de sobreposição do segundo bloco pósprocessado em janela de amostras e do primeiro bloco de amostras para obter um sinal de áudio ou de imagem descodificado (1180).
BR112015019270-0A 2013-02-20 2014-02-20 aparelho e método para criar um sinal de áudio ou de imagem codificado na presença de transientes, aparelho e método para descodificar um sinal de áudio ou de imagem codificado na presença de transientes BR112015019270B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361767115P 2013-02-20 2013-02-20
US61/767,115 2013-02-20
PCT/EP2014/053287 WO2014128194A1 (en) 2013-02-20 2014-02-20 Apparatus and method for generating an encoded signal or for decoding an encoded audio signal using a multi overlap portion

Publications (3)

Publication Number Publication Date
BR112015019270A2 BR112015019270A2 (pt) 2017-07-18
BR112015019270A8 BR112015019270A8 (pt) 2019-11-12
BR112015019270B1 true BR112015019270B1 (pt) 2021-02-17

Family

ID=50179586

Family Applications (2)

Application Number Title Priority Date Filing Date
BR112015019543-1A BR112015019543B1 (pt) 2013-02-20 2014-02-20 Aparelho para codificar um sinal de áudio, descodificador para descodificar um sinal de áudio, método para codificar e método para descodificar um sinal de áudio
BR112015019270-0A BR112015019270B1 (pt) 2013-02-20 2014-02-20 aparelho e método para criar um sinal de áudio ou de imagem codificado na presença de transientes, aparelho e método para descodificar um sinal de áudio ou de imagem codificado na presença de transientes

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR112015019543-1A BR112015019543B1 (pt) 2013-02-20 2014-02-20 Aparelho para codificar um sinal de áudio, descodificador para descodificar um sinal de áudio, método para codificar e método para descodificar um sinal de áudio

Country Status (20)

Country Link
US (7) US10354662B2 (pt)
EP (4) EP4375996A2 (pt)
JP (2) JP6196324B2 (pt)
KR (2) KR101764726B1 (pt)
CN (5) CN110232929B (pt)
AR (2) AR096576A1 (pt)
AU (2) AU2014220722B2 (pt)
BR (2) BR112015019543B1 (pt)
CA (2) CA2900437C (pt)
ES (2) ES2634621T3 (pt)
HK (2) HK1218988A1 (pt)
MX (2) MX348506B (pt)
MY (2) MY185210A (pt)
PL (2) PL2959482T3 (pt)
PT (2) PT2959481T (pt)
RU (2) RU2626666C2 (pt)
SG (2) SG11201506543WA (pt)
TR (1) TR201910956T4 (pt)
TW (2) TWI550599B (pt)
WO (2) WO2014128197A1 (pt)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2830058A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Frequency-domain audio coding supporting transform length switching
EP2980794A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder using a frequency domain processor and a time domain processor
EP2980795A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
EP2980791A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Processor, method and computer program for processing an audio signal using truncated analysis or synthesis window overlap portions
FR3024581A1 (fr) 2014-07-29 2016-02-05 Orange Determination d'un budget de codage d'une trame de transition lpd/fd
EP3107096A1 (en) 2015-06-16 2016-12-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Downscaled decoding
WO2017050398A1 (en) * 2015-09-25 2017-03-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoder, decoder and methods for signal-adaptive switching of the overlap ratio in audio transform coding
EP3182411A1 (en) 2015-12-14 2017-06-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for processing an encoded audio signal
KR102219752B1 (ko) 2016-01-22 2021-02-24 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 채널 간 시간 차를 추정하기 위한 장치 및 방법
JP6976277B2 (ja) * 2016-06-22 2021-12-08 ドルビー・インターナショナル・アーベー 第一の周波数領域から第二の周波数領域にデジタル・オーディオ信号を変換するためのオーディオ・デコーダおよび方法
US10210874B2 (en) * 2017-02-03 2019-02-19 Qualcomm Incorporated Multi channel coding
EP3382700A1 (en) * 2017-03-31 2018-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for post-processing an audio signal using a transient location detection
EP3382701A1 (en) 2017-03-31 2018-10-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for post-processing an audio signal using prediction based shaping
CN110892478A (zh) * 2017-04-28 2020-03-17 Dts公司 音频编解码器窗口和变换实现
CN111183476B (zh) * 2017-10-06 2024-03-22 索尼欧洲有限公司 基于子窗口序列内的rms功率的音频文件包络
EP3483879A1 (en) * 2017-11-10 2019-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Analysis/synthesis windowing function for modulated lapped transformation
TWI681384B (zh) * 2018-08-01 2020-01-01 瑞昱半導體股份有限公司 音訊處理方法與音訊等化器
WO2020094263A1 (en) 2018-11-05 2020-05-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and audio signal processor, for providing a processed audio signal representation, audio decoder, audio encoder, methods and computer programs
CN113905232A (zh) * 2019-03-09 2022-01-07 杭州海康威视数字技术股份有限公司 进行编码和解码的方法、解码端、编码端和系统
KR20220042125A (ko) * 2019-08-10 2022-04-04 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브픽처 디코딩에서의 버퍼 관리
CN117676135A (zh) 2019-10-18 2024-03-08 北京字节跳动网络技术有限公司 子图片与环路滤波之间的相互影响
CN112803959B (zh) * 2019-11-13 2022-05-10 瑞昱半导体股份有限公司 收发电路与应用于收发电路的信号处理方法
US11942078B2 (en) 2021-02-26 2024-03-26 International Business Machines Corporation Chunking and overlap decoding strategy for streaming RNN transducers for speech recognition

Family Cites Families (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4920426A (en) * 1986-11-10 1990-04-24 Kokusai Denshin Denwa Co., Ltd. Image coding system coding digital image signals by forming a histogram of a coefficient signal sequence to estimate an amount of information
DE3902948A1 (de) 1989-02-01 1990-08-09 Telefunken Fernseh & Rundfunk Verfahren zur uebertragung eines signals
WO1991005412A1 (de) * 1989-10-06 1991-04-18 Telefunken Fernseh Und Rundfunk Gmbh Verfahren zur übertragung eines signals
US5502789A (en) 1990-03-07 1996-03-26 Sony Corporation Apparatus for encoding digital data with reduction of perceptible noise
CN1062963C (zh) * 1990-04-12 2001-03-07 多尔拜实验特许公司 用于产生高质量声音信号的解码器和编码器
JP3186307B2 (ja) 1993-03-09 2001-07-11 ソニー株式会社 圧縮データ記録装置及び方法
US5701389A (en) * 1995-01-31 1997-12-23 Lucent Technologies, Inc. Window switching based on interblock and intrablock frequency band energy
KR0154387B1 (ko) 1995-04-01 1998-11-16 김주용 음성다중 시스템을 적용한 디지탈 오디오 부호화기
JP3552811B2 (ja) * 1995-09-29 2004-08-11 三菱電機株式会社 ディジタル映像信号符号化装置および復号化装置
US5848391A (en) * 1996-07-11 1998-12-08 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Method subband of coding and decoding audio signals using variable length windows
US6131084A (en) * 1997-03-14 2000-10-10 Digital Voice Systems, Inc. Dual subframe quantization of spectral magnitudes
DE19736669C1 (de) * 1997-08-22 1998-10-22 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Erfassen eines Anschlags in einem zeitdiskreten Audiosignal sowie Vorrichtung und Verfahren zum Codieren eines Audiosignals
JP2000000247A (ja) 1998-06-15 2000-01-07 Yoshihiro Adachi ウルトラ ラグ スクリュー
US6173255B1 (en) * 1998-08-18 2001-01-09 Lockheed Martin Corporation Synchronized overlap add voice processing using windows and one bit correlators
DE10000934C1 (de) * 2000-01-12 2001-09-27 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Bestimmen eines Codierungs-Blockrasters eines decodierten Signals
JP2002118517A (ja) * 2000-07-31 2002-04-19 Sony Corp 直交変換装置及び方法、逆直交変換装置及び方法、変換符号化装置及び方法、並びに復号装置及び方法
JP4596197B2 (ja) 2000-08-02 2010-12-08 ソニー株式会社 ディジタル信号処理方法、学習方法及びそれらの装置並びにプログラム格納媒体
CA2418722C (en) * 2000-08-16 2012-02-07 Dolby Laboratories Licensing Corporation Modulating one or more parameters of an audio or video perceptual coding system in response to supplemental information
FR2822980B1 (fr) * 2001-03-29 2003-07-04 Ela Medical Sa Procede de traitement de donnees d'electogrammes d'un dispositif medical implantable actif pour l'aide au diagnostic par un praticien
EP1386312B1 (en) * 2001-05-10 2008-02-20 Dolby Laboratories Licensing Corporation Improving transient performance of low bit rate audio coding systems by reducing pre-noise
US7460993B2 (en) 2001-12-14 2008-12-02 Microsoft Corporation Adaptive window-size selection in transform coding
EP1394772A1 (en) 2002-08-28 2004-03-03 Deutsche Thomson-Brandt Gmbh Signaling of window switchings in a MPEG layer 3 audio data stream
AU2003208517A1 (en) 2003-03-11 2004-09-30 Nokia Corporation Switching between coding schemes
US7325023B2 (en) 2003-09-29 2008-01-29 Sony Corporation Method of making a window type decision based on MDCT data in audio encoding
DE10345996A1 (de) 2003-10-02 2005-04-28 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Verarbeiten von wenigstens zwei Eingangswerten
EP1711938A1 (en) * 2004-01-28 2006-10-18 Koninklijke Philips Electronics N.V. Audio signal decoding using complex-valued data
JP4355745B2 (ja) * 2004-03-17 2009-11-04 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ オーディオ符号化
US7630902B2 (en) * 2004-09-17 2009-12-08 Digital Rise Technology Co., Ltd. Apparatus and methods for digital audio coding using codebook application ranges
US7937271B2 (en) 2004-09-17 2011-05-03 Digital Rise Technology Co., Ltd. Audio decoding using variable-length codebook application ranges
US8744862B2 (en) * 2006-08-18 2014-06-03 Digital Rise Technology Co., Ltd. Window selection based on transient detection and location to provide variable time resolution in processing frame-based data
KR20070068424A (ko) * 2004-10-26 2007-06-29 마츠시타 덴끼 산교 가부시키가이샤 음성 부호화 장치 및 음성 부호화 방법
KR100668319B1 (ko) * 2004-12-07 2007-01-12 삼성전자주식회사 오디오 신호의 변환방법 및 장치와 오디오 신호에적응적인 부호화방법 및 장치, 오디오 신호의 역변환 방법및 장치와 오디오 신호에 적응적인 복호화 방법 및 장치
US7386445B2 (en) * 2005-01-18 2008-06-10 Nokia Corporation Compensation of transient effects in transform coding
JP4809370B2 (ja) * 2005-02-23 2011-11-09 テレフオンアクチーボラゲット エル エム エリクソン(パブル) マルチチャネル音声符号化における適応ビット割り当て
RU2409874C9 (ru) * 2005-11-04 2011-05-20 Нокиа Корпорейшн Сжатие звуковых сигналов
JP2007304258A (ja) * 2006-05-10 2007-11-22 Matsushita Electric Ind Co Ltd オーディオ信号符号化およびその復号化装置、方法ならびにプログラム
US7987089B2 (en) 2006-07-31 2011-07-26 Qualcomm Incorporated Systems and methods for modifying a zero pad region of a windowed frame of an audio signal
DE102006051673A1 (de) 2006-11-02 2008-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale
GB2443832B (en) 2006-11-14 2010-08-18 Schlumberger Holdings Method and system of deploying one or more optical fiber waveguides in conjunction with a pipeline
JP2008129250A (ja) * 2006-11-20 2008-06-05 National Chiao Tung Univ Aacのためのウィンドウ切り替え方法およびm/s符号化の帯域決定方法
KR20080053739A (ko) 2006-12-11 2008-06-16 삼성전자주식회사 적응적으로 윈도우 크기를 적용하는 부호화 장치 및 방법
AU2007331763B2 (en) 2006-12-12 2011-06-30 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Encoder, decoder and methods for encoding and decoding data segments representing a time-domain data stream
FR2911227A1 (fr) * 2007-01-05 2008-07-11 France Telecom Codage par transformee, utilisant des fenetres de ponderation et a faible retard
FR2911228A1 (fr) 2007-01-05 2008-07-11 France Telecom Codage par transformee, utilisant des fenetres de ponderation et a faible retard.
RU2459283C2 (ru) * 2007-03-02 2012-08-20 Панасоник Корпорэйшн Кодирующее устройство, декодирующее устройство и способ
EP2015293A1 (en) 2007-06-14 2009-01-14 Deutsche Thomson OHG Method and apparatus for encoding and decoding an audio signal using adaptively switched temporal resolution in the spectral domain
US9495971B2 (en) * 2007-08-27 2016-11-15 Telefonaktiebolaget Lm Ericsson (Publ) Transient detector and method for supporting encoding of an audio signal
WO2009119592A1 (ja) * 2008-03-25 2009-10-01 旭化成ケミカルズ株式会社 エラストマー組成物及びエアバッグ装置の収納カバー
US8447591B2 (en) 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms
KR101182258B1 (ko) * 2008-07-11 2012-09-14 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 스펙트럼 기울기 제어 프레이밍을 이용한 대역폭 확장 데이터를 계산하는 장치 및 방법
ES2401487T3 (es) * 2008-07-11 2013-04-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y procedimiento para la codificación/decodificación de una señal de audio utilizando un esquema de conmutación de generación de señal ajena
AU2013200680B2 (en) 2008-07-11 2015-01-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder and decoder for encoding and decoding audio samples
EP2311034B1 (en) 2008-07-11 2015-11-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder for encoding frames of sampled audio signals
MX2011000366A (es) * 2008-07-11 2011-04-28 Fraunhofer Ges Forschung Codificador y decodificador de audio para codificar y decodificar muestras de audio.
EP2144171B1 (en) * 2008-07-11 2018-05-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder for encoding and decoding frames of a sampled audio signal
PL2301011T3 (pl) * 2008-07-11 2019-03-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Sposób i dyskryminator do klasyfikacji różnych segmentów sygnału audio zawierającego segmenty mowy i muzyki
MX2011000375A (es) * 2008-07-11 2011-05-19 Fraunhofer Ges Forschung Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada.
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
US8380498B2 (en) * 2008-09-06 2013-02-19 GH Innovation, Inc. Temporal envelope coding of energy attack signal by using attack point location
KR101315617B1 (ko) * 2008-11-26 2013-10-08 광운대학교 산학협력단 모드 스위칭에 기초하여 윈도우 시퀀스를 처리하는 통합 음성/오디오 부/복호화기
US9384748B2 (en) * 2008-11-26 2016-07-05 Electronics And Telecommunications Research Institute Unified Speech/Audio Codec (USAC) processing windows sequence based mode switching
EP2382625B1 (en) * 2009-01-28 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder, encoded audio information, methods for encoding and decoding an audio signal and computer program
US8457975B2 (en) 2009-01-28 2013-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program
PL2234103T3 (pl) * 2009-03-26 2012-02-29 Fraunhofer Ges Forschung Urządzenie i sposób manipulacji sygnałem audio
EP3764356A1 (en) * 2009-06-23 2021-01-13 VoiceAge Corporation Forward time-domain aliasing cancellation with application in weighted or original signal domain
KR101410312B1 (ko) * 2009-07-27 2014-06-27 연세대학교 산학협력단 오디오 신호 처리 방법 및 장치
BR112012007803B1 (pt) * 2009-10-08 2022-03-15 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Decodificador de sinal de áudio multimodal, codificador de sinal de áudio multimodal e métodos usando uma configuração de ruído com base em codificação de previsão linear
KR101137652B1 (ko) * 2009-10-14 2012-04-23 광운대학교 산학협력단 천이 구간에 기초하여 윈도우의 오버랩 영역을 조절하는 통합 음성/오디오 부호화/복호화 장치 및 방법
WO2011085483A1 (en) * 2010-01-13 2011-07-21 Voiceage Corporation Forward time-domain aliasing cancellation using linear-predictive filtering
CN102222505B (zh) * 2010-04-13 2012-12-19 中兴通讯股份有限公司 可分层音频编解码方法系统及瞬态信号可分层编解码方法
PL4120248T3 (pl) * 2010-07-08 2024-05-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dekoder wykorzystujący kasowanie aliasingu w przód
US20140046670A1 (en) * 2012-06-04 2014-02-13 Samsung Electronics Co., Ltd. Audio encoding method and apparatus, audio decoding method and apparatus, and multimedia device employing the same
KR20140075466A (ko) * 2012-12-11 2014-06-19 삼성전자주식회사 오디오 신호의 인코딩 및 디코딩 방법, 및 오디오 신호의 인코딩 및 디코딩 장치

Also Published As

Publication number Publication date
SG11201506543WA (en) 2015-09-29
KR20150120477A (ko) 2015-10-27
CN105378835B (zh) 2019-10-01
RU2015139596A (ru) 2017-03-27
PL2959481T3 (pl) 2017-10-31
CN110047498A (zh) 2019-07-23
US10354662B2 (en) 2019-07-16
CN110047498B (zh) 2023-10-31
EP2959481A1 (en) 2015-12-30
CA2900437A1 (en) 2014-08-28
MX2015010595A (es) 2015-12-16
JP6175148B2 (ja) 2017-08-02
HK1218988A1 (zh) 2017-03-17
ES2634621T3 (es) 2017-09-28
US20230282221A1 (en) 2023-09-07
US10832694B2 (en) 2020-11-10
AR096576A1 (es) 2016-01-20
CN105378835A (zh) 2016-03-02
MX2015010596A (es) 2015-12-16
KR20150126864A (ko) 2015-11-13
MY173774A (en) 2020-02-20
HK1219343A1 (zh) 2017-03-31
TW201443878A (zh) 2014-11-16
CA2901186A1 (en) 2014-08-28
CN110232929B (zh) 2023-06-13
EP4375996A2 (en) 2024-05-29
RU2015139597A (ru) 2017-03-27
JP6196324B2 (ja) 2017-09-13
CN105074819B (zh) 2019-06-04
AU2014220725B2 (en) 2016-11-17
KR101764726B1 (ko) 2017-08-14
US20170323650A1 (en) 2017-11-09
US20200294517A1 (en) 2020-09-17
MX348505B (es) 2017-06-14
TWI550600B (zh) 2016-09-21
TW201447868A (zh) 2014-12-16
CA2901186C (en) 2018-02-20
AU2014220722B2 (en) 2016-09-15
ES2736309T3 (es) 2019-12-27
AR094845A1 (es) 2015-09-02
EP3525207A1 (en) 2019-08-14
US11621008B2 (en) 2023-04-04
EP2959481B1 (en) 2017-04-26
AU2014220725A1 (en) 2015-10-08
CN105074819A (zh) 2015-11-18
PT2959482T (pt) 2019-08-02
US10685662B2 (en) 2020-06-16
US20160050420A1 (en) 2016-02-18
CN110097889A (zh) 2019-08-06
US9947329B2 (en) 2018-04-17
BR112015019543B1 (pt) 2022-01-11
CN110097889B (zh) 2023-09-01
BR112015019270A8 (pt) 2019-11-12
BR112015019543A2 (pt) 2017-07-18
EP2959482A1 (en) 2015-12-30
TWI550599B (zh) 2016-09-21
SG11201506542QA (en) 2015-09-29
WO2014128194A1 (en) 2014-08-28
AU2014220722A1 (en) 2015-10-08
EP2959482B1 (en) 2019-05-01
KR101764725B1 (ko) 2017-08-03
BR112015019270A2 (pt) 2017-07-18
JP2016513283A (ja) 2016-05-12
US11682408B2 (en) 2023-06-20
US20210065725A1 (en) 2021-03-04
RU2626666C2 (ru) 2017-07-31
JP2016507788A (ja) 2016-03-10
CA2900437C (en) 2020-07-21
RU2625560C2 (ru) 2017-07-14
MY185210A (en) 2021-04-30
MX348506B (es) 2017-06-14
US20160078875A1 (en) 2016-03-17
CN110232929A (zh) 2019-09-13
PT2959481T (pt) 2017-07-13
TR201910956T4 (tr) 2019-08-21
US20190371346A1 (en) 2019-12-05
PL2959482T3 (pl) 2019-10-31
WO2014128197A1 (en) 2014-08-28

Similar Documents

Publication Publication Date Title
BR112015019270B1 (pt) aparelho e método para criar um sinal de áudio ou de imagem codificado na presença de transientes, aparelho e método para descodificar um sinal de áudio ou de imagem codificado na presença de transientes
CN113990333A (zh) 用于使用截短分析或合成窗口重叠部分对音频信号进行处理的处理器、方法及计算机程序
BR112017019179B1 (pt) Decodificador para decodificar um sinal de áudio codificado e codificador para codificar um sinal de áudio

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 20/02/2014, OBSERVADAS AS CONDICOES LEGAIS.