BR112016012689B1 - aparelho e método para decodificar um sinal de áudio codificado com baixos recursos computacionais - Google Patents

aparelho e método para decodificar um sinal de áudio codificado com baixos recursos computacionais Download PDF

Info

Publication number
BR112016012689B1
BR112016012689B1 BR112016012689-0A BR112016012689A BR112016012689B1 BR 112016012689 B1 BR112016012689 B1 BR 112016012689B1 BR 112016012689 A BR112016012689 A BR 112016012689A BR 112016012689 B1 BR112016012689 B1 BR 112016012689B1
Authority
BR
Brazil
Prior art keywords
bandwidth extension
harmonic
audio signal
extension mode
encoded audio
Prior art date
Application number
BR112016012689-0A
Other languages
English (en)
Inventor
Andreas NIEDERMEIER
Stephan Wilde
Daniel Fischer
Matthias Hildenbrand
Marc Gayer
Max Neuendorf
Original Assignee
Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V filed Critical Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V
Publication of BR112016012689B1 publication Critical patent/BR112016012689B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
    • 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

APARELHO E MÉTODO PARA DECODIFICAR UM SINAL DE ÁUDIO CODIFICADO COM BAIXOS RECURSOS COMPUTACIONAIS. Aparelho para decodificar um sinal de áudio codificado (101) que compreende dados de controle de extensão de largura de banda que indicam um primeiro modo de extensão de largura de banda de harmônicos ou um Segundo modo de extensão de largura de banda de não harmônicos, que inclui: uma interface de entrada (100) para receber o sinal de áudio codificado que engloba os dados de controle de extensão de largura de banda que indicam o primeiro modo de extensão de largura de banda de harmônicos ou o segundo modo de extensão de largura de banda de não harmônicos; um processador (102) para decodificar o sinal de áudio (101) usando o segundo modo de extensão de largura de banda de não harmônicos; e um controlador (104) para controlar o processador (102) para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos, mesmo quando os dados de controle de extensão de largura de banda indicam o primeiro modo de extensão de largura de banda de harmônicos para o sinal codificado.

Description

[001] Especificação
[002] A presente invenção refere-se a um processamento de áudio e, em particular, a um conceito para decodificar um sinal de áudio codificado usando recursos computacionais reduzidos.
[003] O padrão ‘Unified speech and audio coding” (USAC) [1] padroniza uma ferramenta de extensão da largura de banda de harmônicos, HBE, que emprega um retransmissor de harmônicos, e que é uma extensão do sistema de replicação de banda espectral (SBR), padronizado em [1] e [2], respetivamente.
[004] SBR sintetiza conteúdo de alta frequência de sinais de áudio limitados de largura de banda, utilizando a seção de baixa frequência fornecida juntamente com a informação secundária fornecida. A ferramenta SBR é descrita em [2], SBR, eSBR melhorados são descritos em [1]. A extensão de largura de banda de não harmônicos HBE, que emprega codificadores de voz de fase, faz parte de eSBR e tem sido desenvolvida para evitar a rugosidade acústica que é frequentemente observada em sinais sujeitos ao copy-up patching, tal como é levado a cabo no processamento SBR regular. O âmbito principal de HBE é preservar estruturas de não harmônicos na região de alta frequência sintetizada do sinal de áudio fornecido enquanto aplica eSBR.
[005] Enquanto um codificador pode selecionar a utilização da ferramenta HBE, um decodificador de acordo com [1] proporciona a decodificação e aplica dados relacionados com HBE.
[006] Os testes de escuta [3] demonstraram que a utilização de HBE melhora a qualidade de áudio percentual de fluxos de bits decodificados de acordo com [1].
[007] A ferramenta HBE substitui o simples copy-up patching do sistema SBR legado através de rotinas de processamento de sinal avançado. Isto requer uma quantidade considerável de capacidade de processamento e memória para estados de filtros e linhas de retardamento. Pelo contrário, a complexidade de copy-up patching é negligenciável.
[008] O aumento de complexidade observado com HBE não é um problema para os dispositivos informáticos pessoais. No entanto, os fabricantes de chips que concebem chips de decodificador exigem restrições rígidas e de baixa complexidade relativamente ao volume de trabalho computacional e consumo de memória. Caso contrário, o processamento HBE é desejado para evitar a rugosidade acústica.
[009] Os fluxos de bits USAC são decodificados conforme descrito em [1]. Isto implica necessariamente a implementação de uma ferramenta decodificadora HBE, conforme descrito em [1], 7.5.3. A ferramenta pode ser sinalizada em todos os pontos de operação codec que contêm o processamento eSBR. Para os dispositivos decodificadores que cumprem os critérios de perfil e conformidade de [1] isto quer dizer que aumenta significativamente o pior caso geral de volume de trabalho computacional e consumo de memória.
[010] O aumento atual da complexidade computacional depende da implementação e da plataforma. O aumento no consumo de memória por canal de áudio é de, na implementação otimizada da memória atual, pelo menos 15 kPalavras para o atual processamento HBE.
[011] Um objetivo da presente invenção é fornecer um conceito melhorado para decodificar um sinal de áudio codificado que seja menos complexo mas mesmo assim adequado para processar os existentes sinais de áudio codificados.
[012] Este objetivo é alcançado por um aparelho para decodificar um sinal de áudio codificado de acordo com a reivindicação 1, um método para decodificar um sinal de áudio codificado de acordo com a reivindicação 13 ou um programa informático de acordo com a reivindicação 14.
[013] A presente invenção baseia-se no fato de se conseguir descobrir um conceito de decodificação de áudio que requer menos recursos de memória, quando um sinal de áudio, que consiste de secções por decodificar usando um modo de extensão de largura de banda de harmônicos e adicionalmente que contém secções por decodificar usando um modo de extensão de largura de banda de não harmônicos, é descodificado, através de todo o sinal, apenas com o modo de extensão de largura de banda de não harmônicos. Por outras palavras, mesmo quando um sinal compreende secções ou quadros que estão sinalizados para serem decodificados usando um modo de extensão de largura de banda de harmônicos, essas secções ou quadros são mesmo assim descodificadas usando o modo de extensão de largura de banda de não harmônicos. Com essa finalidade, é fornecido um processador para decodificar o sinal de áudio, usando o modo de extensão de largura de banda de não harmônicos, e adicionalmente é implementado um controlador dentro do aparelho ou é implementado um passo de controle dentro de um método de decodificação para controlar o processador para decodificar o sinal de áudio, usando o segundo modo de extensão de largura de banda de não harmônicos mesmo quando os dados de controle da extensão da largura de banda incluídos no sinal de áudio codificado indicam o primeiro - isto é, de harmônicos - modo de extensão de largura de banda para o sinal de áudio. Assim sendo, o processador apenas tem de ser implementado com correspondentes recursos de hardware, tal como capacidade de memória e processamento, para apenas fazer face ao muito eficiente modo de extensão de largura de banda de não harmônicos. Por outro lado, o decodificador de áudio está, porém, na posição de aceitar e decodificar um sinal de áudio codificado que requer um modo de extensão de largura de banda de harmônicos com uma qualidade aceitável. Dito de maneira diferente, para aplicações que exigem baixos recursos computacionais, o controlador está configurado para controlar o processador para decodificar todo o sinal de áudio com o modo de extensão de largura de banda de não harmônicos, apesar de o próprio sinal de áudio codificado exigir, devido aos dados de controle da extensão de largura de banda incluídos, que pelo menos várias secções deste sinal sejam descodificadas usando o modo de extensão de largura de banda de harmônicos. Assim sendo, consegue-se um bom compromisso entre os recursos computacionais, por um lado, e a qualidade de áudio, por outro lado, ao mesmo tempo que se mantém toda a compatibilidade anterior para com sinais de áudio codificados que exigem ambos os modos de extensão de largura de banda. A presente invenção é vantajosa pelo fato de diminuir a complexidade computacional e a exigência da memória de, em particular, um decodificador USAC. Além disso, em modelos privilegiados, o modo de extensão de largura de banda de não harmônicos predeterminado ou padronizado é modificado usando dados do modo de extensão de largura de banda de harmônicos transmitidos no fluxo de bits para reutilizar dados do modo de extensão de largura de banda que basicamente não são necessários para o modo de extensão de largura de banda de não harmônicos, na medida do possível, para melhorar ainda mais a qualidade de áudio do modo de extensão de largura de banda de não harmônicos. Assim sendo, é fornecido um esquema de decodificação alternativo neste modelo privilegiado para mitigar a deficiência da qualidade percentual causada pela omissão do modo de extensão de largura de banda de harmônicos, que normalmente se baseia no processamento de codificador de voz de fase conforme discutido no padrão USAC [1].
[014] Em um modelo, o processador tem recursos de memória e processamento suficientes para decodificar o sinal de áudio codificado usando o segundo modo de extensão de largura de banda de não harmônicos, em que os recursos de memória ou processamento não são suficientes para decodificar o sinal de áudio codificado usando o primeiro modo de extensão de largura de banda de harmônicos, quando o sinal de áudio codificado é um sinal de áudio estéreo codificado ou multicanal. Ao contrário disso, o processador tem recursos de memória e processamento suficientes para decodificar o sinal de áudio codificado usando o segundo modo de extensão de largura de banda de não harmônicos e usando o primeiro modo de extensão de largura de banda de harmônicos, quando o sinal de áudio codificado é um sinal mono codificado, uma vez que os recursos para a decodificação mono são reduzidos comparativamente com os recursos para a decodificação estéreo ou multicanal. Por conseguinte, os recursos disponíveis dependem da configuração do fluxo de bits, isto é, a combinação de ferramentas, taxa de amostragem, etc. Por exemplo, pode ser possível os recursos serem suficientes para decodificar um fluxo de bits mono usando BWE de harmônicos, mas ao processador faltam recursos para decodificar um fluxo de bits estéreo usando BWE de harmônicos.
[015] Discutem-se, a seguir, modelos privilegiados no contexto dos desenhos anexos, nos quais:
[016] a Fig. 1a ilustra um modelo de um aparelho para decodificar um sinal de áudio codificado usando um processador de recursos limitados;
[017] a Fig. 1b ilustra um exemplo de dados de sinal de áudio codificados para ambos os modos de extensão de largura de banda;
[018] a Fig. 1c ilustra um quadro que apresenta o decodificador padrão USAC e o decodificador inovador;
[019] a Fig. 2 ilustra um fluxograma de um modelo para implementar o controlador da Fig. 1a;
[020] a Fig. 3a ilustra outra estrutura de um sinal de áudio codificado com dados de carga útil da extensão de largura de banda comuns e dados adicionais de extensão de largura de banda de harmônicos;
[021] a Fig. 3b ilustra uma implementação do controlador para modificar o modo de extensão de largura de banda de não harmônicos padrão;
[022] a Fig. 3c ilustra outra implementação do controlador;
[023] a Fig. 3b ilustra uma implementação do modo de extensão de largura de banda de não harmônicos melhorado;
[024] a Fig. 5 ilustra uma implementação preferida do processador;
[025] a Fig. 6 ilustra uma sintaxe do procedimento de decodificação para um elemento de canal único;
[026] as Figs. 7a e 7b ilustram uma sintaxe do procedimento de decodificação para um elemento de pares de canal;
[027] a Fig. 8 ilustra outra implementação melhorada do modo de extensão de largura de banda de não harmônicos;
[028] a Fig. 8b ilustra um resumo dos dados indicados na Fig. 8a;
[029] a Fig. 8c ilustram outra implementação do melhoramento do modelo do modo de extensão de largura de banda de não harmônicos tal como é realizado pelo controlador;
[030] a Fig. 8d ilustra uma memória intermédia patching e a deslocação do conteúdo da memória temporária patching; e
[031] a Fig. 9 ilustra uma explicação da modificação preferida do modo de extensão de largura de banda de não harmônicos;
[032] A Fig. 1a ilustra um modelo de um aparelho para decodificar um sinal de áudio codificado. O sinal de áudio codificado compreende dados de controle da extensão de largura de banda que indicam um primeiro modo de extensão de largura de banda de harmônicos ou um segundo modo de extensão de largura de banda de não harmônicos. O sinal de áudio codificado é introduzido em uma linha 101 para uma interface de entrada 100. A interface de entrada é ligada via linha 108 a um processador de recursos limitados 102. Além disso, é fornecido um controlador 104 que está, pelo menos opcionalmente, ligado à interface de entrada 100 via linha 106, e que está adicionalmente ligado ao processador 102 via linha 110. A saída do processador 102 é um sinal de áudio descodificado conforme indicado com 112. A interface de entrada 100 está configurada para receber o sinal de áudio codificado que compreende os dados de controle da extensão de largura de banda, indicando ou um primeiro modo de extensão de largura de banda de harmônicos ou um segundo modo de extensão de largura de banda de não harmônicos para uma seção codificada, tal como um quadro do sinal de áudio codificado. O processador 102 está configurado para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos apenas conforme indicado perto da linha 110 na Fig. 1a. Isto é assegurado pelo controlador 104. O controlador 104 está configurado para controlar o processador 102 para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos, mesmo quando os dados de controle da extensão de largura de banda indicam o primeiro modo de extensão de largura de banda de harmônicos para o sinal de áudio codificado.
[033] A Fig. 1b ilustra uma implementação preferida do sinal de áudio codificado dentro do fluxo de dados ou um fluxo de bits. O sinal de áudio codificado compreende um cabeçalho 114 para todo o item de áudio, e o item de áudio inteiro está organizado em vários quadros, tais como o quadro 1 116, o quadro 2 118 e o quadro 3 120. Cada quadro tem adicionalmente um cabeçalho associado, tal como o cabeçalho 1 116a para o quadro 1 e os dados de carga útil 116b para o quadro 1. Além disso, o segundo quadro 118 tem, mais uma vez, dados de cabeçalho 118a e dados de carga útil 118b. De forma idêntica, o terceiro quadro 120 tem, mais uma vez, um cabeçalho 120a e um bloco de dados de carga útil 120b. No padrão USAC, o cabeçalho 114 tem uma flag “harmonicSBR”. Se esta flag harmonicSBR for zero, todo o item de áudio é descodificado usando um modo de extensão de largura de banda de não harmônicos conforme definido no padrão USAC, que neste contexto refere-se de volta ao padrão High Efficiency - AAC (HE-AAC), que é ISO/IEC 1449-3:2009, peça de áudio. No entanto, se a flag harmonicSBR tiver um valor de um, o modo de extensão de largura de banda de harmônicos está ativado, mas pode depois ser sinalizado, para cada quadro, por uma flag individual sbrPatchingMode, que pode ser zero ou um. Neste contexto, faz-se referência à Fig. 1c que indica os diferentes valores das duas flags. Assim sendo, quando a flag harmonicSBR é um e a flag sbrPatchingMode é zero, o decodificar padrão USAC realiza um modo de extensão de largura de banda de harmônicos. Neste caso, que é indicado por 130 na Fig. 1c, porém, o controlador 104 da Fig. 1a é operativo para, mesmo assim, controlar o processador 102 para realizar um modo de extensão de largura de banda de não harmônicos.
[034] A Fig. 2 ilustra uma implementação preferida do procedimento inventivo. No passo 200, a interface de entrada 100 ou qualquer outra entidade dentro do aparelho para decodificar lê os dados de controle da extensão de largura de banda a partir do sinal de áudio codificado, e estes dados de controle da extensão de largura de banda podem ser uma indicação por quadro ou, se for fornecido, uma indicação adicional por item conforme discutido no contexto da Fig. 1b relativamente ao padrão USAC. No passo 202, o processador 102 recebe os dados de controle da extensão de largura de banda e guarda-os em um registador de controle específico implementado dentro do processador 102 da Fig. 1a. De seguida, no passo 204, o controlador 104 acede a este registador de controle do processador e, conforme indicado em 206, sobrescreve o registador de controle com um valor que indica a extensão de largura de banda de não harmônicos. Isto é ilustrado, a título de exemplo, dentro da sintaxe USAC para o elemento de canal único em 600 na Fig. 6 ou para o sbr_channel_pair_element indicado no passo 700 na Fig. 7a e 702, 704 na Fig. 7b respetivamente. Em particular, o “sobrescrever” conforme ilustrado no bloco 206 da Fig. 2 pode ser implementado através da inserção de linhas 600, 700, 702, 704 na sintaxe USAC. Em particular, o remanescente da Fig. 6 corresponde ao quadro 41 de ISO/IEC DIS 23003-3 e as Figuras 7a, 7b correspondem ao quadro 42 de ISO/IEC DIS 23003-3. Este padrão internacional é incorporado aqui por inteiro como referência. No padrão, é dada a definição detalhada de todos os parâmetros/valores na Fig. 6 e Figuras 7a, 7b.
[035] Em particular, a linha adicional na sintaxe de alto nível indicada com 600, 700, 702, 704 indica que, independentemente do valor sbrPatchingMode tal como é lido a partir do fluxo de bits em 602, a flag sbrPatchingMode é, mesmo assim, definida para um, isto é, sinaliza ao outro processo no decodificador que deve ser realizado um modo de extensão de largura de banda de não harmônicos. É importante que a linha de sintaxe 600 seja colocada a seguir ao lado do decodificador que lê os dados específicos de extensão da largura de banda que consistem de sbrOversampllingFlag, sbrPitchInBinsFlag e sbrPitchInBins indicadas por 604. Assim sendo, conforme ilustrado na Fig. 6, e de modo idêntico na Fig. 7a, o sinal de áudio codificado compreende dados comuns de carga útil de extensão de largura de banda 606 para ambos os modos de extensão de largura de banda, isto é, o modo de extensão de largura de banda de não harmônicos e o modo de extensão de largura de banda de harmônicos, e adicionalmente dados específicos para o modo de extensão de largura de banda de harmônicos ilustrado com 604. Isto será discutido mais adiante no contexto da Fig. 3a. A variável “lpHBE” ilustra o procedimento inventivo, isto é, o modo de “extensão de largura de banda de harmônicos de baixa capacidade”, que é um modo de extensão de largura de banda de não harmônicos, mas com uma modificação adicional, que será discutida mais adiante relativamente à “extensão de largura de banda de harmônicos”.
[036] Preferencialmente, conforme indicado na Fig. 1a, o processador 102 é um processador de recursos limitados. Especificamente, o processador de recursos limitados 102 tem recursos de procedimento e recursos de memória suficientes para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos. No entanto, especificamente os recursos de memória ou de processamento não são suficientes para decodificar o sinal de áudio codificado usando o primeiro modo de extensão de largura de banda de harmônicos. Conforme indicado na Fig. 3a, um quadro compreende um cabeçalho 300, dados comuns de carga útil da extensão de largura de banda 302, dados adicionais de extensão de largura de banda de harmônicos 304, tais como informação em um pitch, uma grelha de harmônicos ou idêntico, e adicionalmente, dados de núcleo codificados 306. A ordem dos itens de dados pode, porém, ser diferente da Fig. 3a. Em um modelo preferido diferente, os dados de núcleo codificados vêm em primeiro lugar. Segue-se o cabeçalho 300 com o sbrPatchingMode flag/bit, que é seguido pelos dados adicionais HBE 304 e, por fim, os dados comuns de extensão BW 302.
[037] Os dados adicionais de extensão de largura de banda de harmônicos são, no exemplo USAC, conforme discutido no contexto da Fig. 6, item 604, a informação sbrPitchInBins que consiste de 7 bits. Especificamente, conforme indicado no padrão USAC, os dados sbrPitchInBins controlam a adição de termos de produtos cruzados no retransmissor de harmônicos SBR. sbrPitchInBins é um valor inteiro entre 0 e 127 e representa a distância medida em blocos de frequência para um 1536-DFT que atua sobre a frequência de amostragem do codificador de núcleo. Em particular, verificou-se que a utilização da informação sbrPitchInBins permite determinar o pitch ou grelha de harmônicos. Isto é ilustrado pelo fórmula (1) na Fig. 8b. Para calcular a grelha de harmônicos são calculados os valores de sbrPitchInBins e sbrRatio, em que a taxa SBR pode ser a indicada na Fig. 8b em cima.
[038] Naturalmente, podem ser incluídas no fluxo de bits outras indicações da grelha de harmônicos, o pitch ou o tom fundamental que define a grelha de harmônicos. Estes dados são usados para controlar o primeiro modo de extensão de largura de banda de harmônicos e podem, em um modelo da presente invenção, serem descartados para que o modo de extensão de largura de banda de não harmônicos possa ser realizado sem quaisquer modificações. Em outros modelos, porém, o modo de extensão de largura de banda de não harmônicos direto é modificado usando os dados de controle para o modo de extensão de largura de banda de harmônicos conforme ilustrado na Fig. 3b e em outras figuras. Por outras palavras, o sinal de áudio codificado compreende os dados comuns de carga útil da extensão de largura de banda 302 para o primeiro modo de extensão de largura de banda de harmônicos e o segundo modo de extensão de largura de banda de não harmônicos e dados adicionais de carga útil 304 para o primeiro modo de extensão de largura de banda de harmônicos. Neste contexto, o controlador 104 ilustrado na Fig. 1 está configurado para usar os dados adicionais de carga útil para controlar o processador 102 para modificar uma operação patching realizada pelo processador comparativamente com a operação patching no segundo modo de extensão de largura de banda de não harmônicos sem qualquer modificação. Com esta finalidade, é preferível que o processador 102 compreenda uma memória temporária patching conforme ilustrado na Fig. 3b, e a implementação específica da memória temporária é explicada, a título de exemplo, relativamente à Fig. 8d.
[039] Noutro modelo, os dados adicionais de carga útil 304 para o primeiro modo de extensão de largura de banda de harmônicos compreende informação sobre uma característica de harmônicos do sinal de áudio codificado, e esta característica de harmônicos podem ser dados sbrPitchInBins, outros dados de grelha de harmônicos, dados de tom fundamental ou quaisquer outros dados, a partir dos quais se pode derivar uma grelha de harmônicos ou um tom fundamental ou um pitch da seção correspondente do sinal de áudio codificado. O controlador 104 está configurado para modificar um conteúdo da memória temporária patching de uma memória temporária patching usada pelo processador 102 para realizar uma operação patching na decodificação do sinal de áudio codificado, de modo a que uma característica de harmônicos de um sinal patch fique mais próxima da característica de harmônicos do que um sinal corrigido sem modificar a memória temporária patching.
[040] Com essa finalidade, faz-se referência à Fig. 9 que ilustra, com 900, um espectro original que tem linhas espectrais em uma grelha de harmônicos k • fo e as linhas de harmônicos estendem-se de 1 para N. Além disso, o tom fundamental f0 é, neste exemplo, igual a 3 para que a grelha de harmônicos compreenda todos os múltiplos de 3. Além disso, o item 9o2 indica um espectro de núcleo descodificado antes de patching. Em particular, a frequência transversal xo é indicada com 16 e uma origem de patch é indicada para se estender da linha de frequência 4 até à linha de frequência 1o. A frequência para iniciar e/ou para a origem de patch é preferencialmente sinalizada dentro do sinal de áudio codificado normalmente como dados dentro dos dados comuns de carga útil de extensão de largura de banda 3o2 da Fig. 3a. O item 9o4 indica a mesma situação do item 9o2, mas com uma grelha de harmônicos calculada adicionalmente k • fo com 9o6. Além disso, é indicado um destino de patch 9o8. Este destino de patch está, de preferência, adicionalmente incluído nos dados comuns de carga útil da extensão de largura de banda 3o2 da Fig. 3a. Assim sendo, a origem de patch indica a frequência inferior do alcance da origem conforme indicado em 9o3, e o destino de patch indica o limite inferior do destino de patch. Se o patching tipicamente de não harmônicos fosse aplicado conforme indicado 91o, podia observar-se um desajuste entre as linhas tonais ou linhas de harmônicos dos dados corrigidos e a grelha de harmônicos calculada 906. Assim sendo, o modo patching SBR legado ou o modo patching de não harmônicos USAC ou High Efficiency AAC direto insere um patch com uma grelha de harmônicos falsa. Para tratar este assunto, a modificação deste patch de não harmônicos direto é realizada pelo processador. Uma forma para modificar é rodar o conteúdo da memória temporária patching ou, dito de outro modo, mover as linhas de harmônicos dentro da banda patching, mas sem mudar a distância na frequência das linhas de harmônicos. Aos profissionais na matéria são evidentes outras formas para fazer corresponder a grelha de harmônicos do patch à grelha de harmônicos calculada do espectro descodificado antes de patching. Neste modelo preferido da presente invenção, os dados adicionais de extensão de largura de banda de harmônicos incluídos no sinal de áudio codificado juntamente com os dados comuns de carga útil da extensão de largura de banda não são simplesmente descartados, sendo antes reutilizados para melhorar ainda mais a qualidade de áudio através da modificação do modo de extensão de largura de banda de não harmônicos normalmente sinalizado dentro do fluxo de bits. No entanto, pelo fato de o modo de extensão de largura de banda de não harmônicos modificado ser ainda um modo de extensão de largura de banda de não harmônicos que se baseia em uma operação de copy-up de um conjunto de blocos de frequência adjacente em um conjunto de blocos de frequência adjacente, este procedimento não resulta em um quantidade adicional de recursos de memória comparativamente com a realização do modo de extensão de largura de banda de não harmônicos direto, melhorando antes significativamente a qualidade de áudio do sinal reconstruído devido às grelhas de harmônicos correspondentes conforme indicado na Fig. 9 com 912.
[041] A Fig. 3c ilustra uma implementação privilegiada realizada pelo controlador 104 da Fig. 3b. Em um passo 310, o controlador 104 calcula uma grelha de harmônicos a partir dos dados adicionais de extensão de largura de banda de harmônicos e, para esse fim, pode ser realizado qualquer cálculo, mas a fórmula (1) na Fig. 8b é realizada no contexto de USAC. Além disso, no passo 312, é determinada uma banda de origem patching e uma banda de destino patching, isto é, isto pode compreender basicamente a leitura dos dados de origem patch 903 e os dados de destino patch 908 a partir dos dados comuns de extensão de largura de banda. Em outros modelos, porém, estes dados podem estar predefinidos e, por isso, podem ser já conhecidos pelo decodificador e não têm de ser necessariamente transmitidos.
[042] No passo 314, a banda de origem patching é modificada dentro dos limites da frequência, isto é, os limites patch da origem patch não mudam comparativamente com os dados transmitidos. Isto pode ser feito antes do patching, isto é, quando os dados patch estão, relativamente ao núcleo ou espectro descodificado, antes do patching indicado com 902, ou quando o conteúdo de patch já foi transposto para a faixa de maior frequência, isto é, conforme ilustrado na Fig. 9 com 910 e 912, em que a rotação é realizada depois do patching, sendo o patching simbolizado pela seta 914.
[043] Este patching 914 ou “copy-up” é um patching de não harmônicos que pode ser visto na Fig. 9, comparando a abrangência da origem patch que compreende seis incrementos de frequência, e os mesmos seis incrementos de frequência na faixa de destino, isto é, com 910 ou 912.
[044] A modificação é realizada de modo a localizar uma seção de frequência na banda de origem patching que coincide com a grelha de harmônicos, após patching, em uma seção de frequência de destino que coincide com a grelha de harmônicos.
[045] Preferencialmente, conforme ilustrado na Fig. 8d, a memória temporária patching indicada em três diferente estados 828, 830, 832 é fornecida dentro do processador 102. O processador está configurado para carregar a memória temporária patching conforme indicado em 400 na Fig. 4. Em seguida, o controlador está configurado para calcular 402 um valor de desvio da memória temporária usando os dados adicionais de extensão de largura de banda e os dados comuns de extensão de largura de banda. Em seguida, no passo 404, o conteúdo da memória temporária é desviado pelo valor de desvio da memória temporária calculado. O item 830 indica quando o valor de desvio foi calculado para ser “-2”, e o item 832 indica um estado de memória temporária no qual um valor de desvio de 2 foi calculado no passo 404 e realizado um desvio por +2 no passo 404. Em seguida, conforme ilustrado na 406 da Fig. 4, é realizado um patching usando o conteúdo de memória temporária patching desviado e, apesar disso, o patch é realizado de um modo de não harmônicos. Em seguida, no passo 408, o resultado de patch é modificado usando dados comuns de extensão de largura de banda. Esses dados comuns de largura de banda de extensão adicionalmente usados podem ser, tal como é conhecido a parir de High Efficiency AAC ou USAC, dados de envelope espectrais, dados de ruído, dados sobre linhas de harmônicos específicas, dados de filtração inversa, etc.
[046] Com essa finalidade, faz-se referência à Fig. 5 que ilustra uma implementação mais detalhada do processador 102 da Fig. 1a. O processador compreende normalmente um decodificador de núcleo 500, um patcher 502 com a memória temporária patching, um modificador patch 504 e um combinador 506. O decodificador de núcleo está configurado para decodificar o sinal de áudio codificado para obter um espectro descodificado antes de patching conforme ilustrado com 902 na Fig. 9. Em seguida, o patcher com a memória temporária patching 502 realiza a operação 914 na Fig. 9. O patcher 502 realiza a modificação da memória temporária patching antes ou depois de patching conforme discutido no contexto da Fig. 9. O modificador de patch 504 usa, por fim, dados adicionais de extensão de largura de banda para modificar o resultado de patch conforme delineado com 408 na Fig. 4. Em seguida, o combinador 506, que pode ser, por exemplo, um combinador do domínio da frequência em forma de um banco de filtro de síntese, combina a saída do modificador patch 504 e a saída do decodificador de núcleo 500, isto é, o sinal de banda baixa, para obter finalmente o sinal de áudio expandido de largura de banda como saída na linha 112 na Fig. 1a.
[047] Tal como já foi discutido no contexto da Fig. 1b, os dados de controle da extensão de largura de banda podem compreender uma primeira entidade de dados de controle para um item de áudio, tal como harmonicSBR ilustrado na Fig. 1b, em que este item de áudio compreende vários quadros de áudio 116, 118, 120. A primeira entidade de dados de controle indica se o primeiro modo de extensão de largura de banda de harmônicos está ativo ou não para os vários quadros. Além disso, é fornecida uma segunda entidade de dados de controle correspondente ao modo patching SBR, a título exemplificativo no padrão USAC, que é fornecida em cada um dos cabeçalhos 116a, 118a, 120a para os quadros individuais.
[048] A interface de entrada 100 da Fig. 1a está configurada para ler a primeira entidade de dados de controle para o item de áudio e a segunda entidade de dados de controle para cada quadro da variedade de quadros, e o controlador 104 da Fig. 1a está configurado para controlar o processador 102 para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos independentemente de um valor da primeira entidade de dados de controle e independentemente de um valor da segunda entidade de dados de controle.
[049] Em um modelo da presente invenção, e conforme ilustrado pelas mudanças de sintaxe na Fig. 6 e nas Figuras 7a, 7b, o decodificador USAC é forçado a ignorar o cálculo da extensão de largura de banda de harmônicos de complexidade relativamente alta. Assim sendo, é implicada uma extensão da largura de banda ou “HBE de baixa capacidade” se a flag lpHBE indicada com 600 e 700, 702, 704 for definida para um valor que não seja zero. A lpHBE flag pode ser definida por um decodificador individualmente, dependendo dos recursos de harware disponíveis. Um valor zero significa que o decodificador vai atuar totalmente em conformidade com o padrão, isto é, conforme instruído pela primeira e segunda entidade de dados de controle da Fig. 1b. No entanto, se o valor for um, o modo de extensão de largura de banda de não harmônicos será realizado pelo processador mesmo quando é sinalizado o modo de extensão de largura de banda de harmônicos.
[050] Assim sendo, a presente invenção providencia uma menor complexidade computacional e menor consumo de memória que requer um processador juntamente com um novo procedimento de decodificação. A sintaxe do fluxo de bits de eSBR conforme definido em [1] partilha uma base comum tanto para decodificação HBE [1] como para a decodificação SBR legada [2]. No caso de HBE, porém, é codificada uma informação adicional para o fluxo de bits. O decodificador de “baixa complexidade HBE” em um modelo preferido da presente invenção descodifica os dados codificados USAC de acordo com [1] e descarta toda a informação específica HBE. Os remanescentes dados eSBR são depois introduzidos no e interpretados pelo algoritmo SBR [2] legado, isto é, os dados são usados para aplicar copy-up patching [2] em vez da transposição de harmônicos. A modificação do mecanismo de decodificação eSBR é, relativamente às mudanças de sintaxe, ilustrada nas Figuras 6 e 7a, 7b. Além disso, em um modelo preferido, é reutilizada a informação específica HBE, tal como a informação sbrPitchInBins levada a cabo pelo fluxo de bits.
[051] Com os dados de fluxos de bits codificados USAC legado, o valor sbrPitchInBins pode ser transmitido dentro de um quadro USAC. Este valor reflete um valor de frequência que foi determinado por um codificador para transmitir informação que descreve a estrutura de harmônicos do atual quadro USAC. Para explorar este valor sem usar a funcionalidade HBE padrão, o seguinte método inventivo deve ser aplicado passo a passo: 1. Extrair sbrPitchInBins do fluxo de bits Ver a tabela 44 e a tabela 45 respetivamente para informação sobre como extrair o elemento do fluxo de bits sbrPitchInBins do fluxo de bits USAC [1]. 2. Calcular a grelha de harmônicos de acordo com a fórmula (1)
Figure img0001
3. Calcular a distância tanto da sub-banda inicial do patch de origem e a sub-banda inicial do patch de destino para a grelha de harmônicos.
[052] O fluxograma na Fig. 8a fornece uma descrição detalhada do algoritmo inventivo sobre como calcular a distância para iniciar e para o patch para a grelha de harmônicos harmonicGrid (hg) source_band dest_band p_mod_x k_mod_x mod Grelha de harmônicos de acordo com (1) Banda de origem patch QMF 903 da Fig. 9 Banda de destino patch QMF 908 da Fig. 9 Source_band mod hg Dest_band mod hg Operação modulo NINT Ronda até ao próximo número inteiro sbrRatio “T c^nn'A <113 13 1 Taxa SBR, isto é -, -, - ou -, - ou – pitchInBins [053] Em seguida, a Informação pitch transmitida no fluxo de bits
[053] Em seguida, a Fig. 8a é discutida em maior detalhe. Preferencialmente, este controle, isto é, todo o cálculo é feito no controlador 104 da Fig. 1a. No passo 800, a grelha de harmônicos é calculada de acordo com a fórmula (1) conforme ilustrado na Fig. 8b. Em seguida, é determinado se a grelha de harmônicos hg é inferior a 2. Se não for, o controle prossegue para o passo 810. Quando, porém, é determinado que a grelha de harmônicos é inferior a 2, o passo 804 determina se o valor da banda de origem é par. Se esse for o caso, a grelha de harmônicos é determinada para ser 2, mas se esse não for o caso, a grelha de harmônicos é determinada para ser igual a 3. Em seguida, no passo 810, são realizados os cálculos do módulo. No passo 812, é determinado se ambos os cálculos de módulo diferem. Se os resultados forem idênticos, o procedimento termina, e se os resultados diferirem, o valor de desvio é calculado conforme indicado no bloco 814 como diferença entre ambos os resultados do cálculo do módulo. Em seguida, e conforme ilustrado no passo 814, o desvio da memória temporária é realizado com reinício cíclico. Vale a pena observar que as relações de fase são preferencialmente consideradas quando se aplica ao desvio. O controle para no bloco 816.
[054] Para resumir, conforme ilustrado na Fig. 8c, todo o procedimento compreende o passo de extrair a informação sbrPitchInBins a partir do fluxo de bits, tal como é indicado em 820. Em seguida, o controlador calcula a grelha de harmônicos conforme indicado com 822. Em seguida, no passo 824, é calculada tanto a distância da sub-banda inicial de origem como da sub-banda inicial de destino para a grelha de harmônicos, que corresponde, no modelo preferido, ao passo 810. Por fim, conforme indicado no bloco 826, é executado o desvio da memória temporária QMF, isto é, o desvio de reinício cíclico dentro do domínio QMF da extensão de largura de banda de não harmônicos High Efficiency AAC.
[055] No desvio da memória temporária QMF, a estrutura de harmônicos do sinal é reconstruída de acordo com a informação sbrPitchInBins transmitida, apesar de ter sido realizado um procedimento de extensão de largura de banda de não harmônicos
[056] Embora alguns aspectos tenham sido descritos no contexto de um aparelho para codificar e decodificar, está claro que esses aspectos representam também uma descrição do método correspondente, onde um bloco ou dispositivo corresponde a uma fase do método ou a uma característica de uma fase do método. De forma análoga, os aspectos descritos no contexto de uma fase do método representam também uma descrição de um bloco ou item correspondente ou característica de um aparelho correspondente. Poderão ser executadas algumas ou todas as fases do método com (ou utilizando) um aparelho de hardware, como por exemplo, um microprocessador, um computador programável ou um circuito eletrônico. Em algumas versões, poderá ser executada uma ou mais fases importantes do método com esse aparelho.
[057] Dependendo de determinados requisitos de implementação, as versões da invenção podem ser implementadas em hardware ou em software. A implementação pode ser efetuada utilizando um meio de armazenamento não transitório como um meio de armazenamento digital, por exemplo, uma disquete, Hard Disk Drive (HDD), um DVD, um Blu-Ray, um CD, um ROM, um PROM, uma EPROM, uma EEPROM ou uma memória amovível, com sinais de controle eletronicamente legíveis aí guardados, que cooperam (ou conseguem cooperar) com um sistema de computador programável de modo a que o respetivo método seja efetuado. Desse modo, o meio de armazenamento digital poderá ser legível pelo computador.
[058] Algumas versões de acordo com a invenção incluem um transportador de dados com sinais de controle eletronicamente legíveis, que conseguem cooperar com um sistema de computador programável de modo a que seja efetuado um dos métodos aqui descritos.
[059] No geral, as versões da presente invenção podem ser implementadas como um produto do programa de computador com um código do programa, sendo o código do programa operativo para efetuar um dos métodos quando o produto do programa de computador é executado em um computador. O código de programa pode, por exemplo, ser guardado em um suporte de leitura em máquina.
[060] Outras versões incluem o programa de computador para efetuar um dos métodos aqui descritos, guardados em um suporte legível pela máquina.
[061] Por outras palavras, uma versão do método da invenção é, desse modo, um programa de computador com um código do programa para efetuar um dos métodos aqui descritos, quando o programa de computador é executado em um computador.
[062] Uma outra versão do método inventivo é, desse modo, um transportador de dados (ou um meio de armazenamento digital ou um meio legível no computador) que inclui, conforme registado, o programa de computador para efetuar 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.
[063] Uma outra versão do método inventivo é, desse modo, um fluxo de dados ou uma sequência de sinais que representam o programa de computador para efetuar um dos métodos aqui descritos. O fluxo de dados ou a sequência de sinais poderão, por exemplo, ser configurados para serem transferidos através de uma ligação de comunicação de dados, por exemplo, através da data internet.
[064] 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.
[065] Outro modelo compreende um computador com o programa informático instalado para executar um dos métodos aqui descritos.
[066] Uma outra versão de acordo com a invenção inclui um aparelho ou um sistema configurado para transferir (por exemplo, eletronicamente ou oticamente) para um receptor, um programa informático para efetuar um dos métodos aqui descritos. O receptor poderá, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou similar. O aparelho ou sistema poderá, por exemplo, incluir um servidor de arquivo para transferência do programa de computador para o receptor.
[067] Em algumas versões, poderá ser utilizado um dispositivo lógico programável (por exemplo, uma porta de matriz programável) para efetuar alguma sou todas as funcionalidades dos métodos aqui descritos. Em algumas versões, um painel de porta de campo programável poderá cooperar com um microprocessador para efetuar um dos métodos aqui descritos. No geral, os métodos são preferencialmente efetuados por qualquer aparelho de hardware.
[068] As versões acima descritas são meramente ilustrativas para os princípios da presente invenção. É entendido que as alterações e variações das disposições e dos pormenores aqui descritos serão aparentes aos especialistas. É intenção, desse modo, estar limitado apenas pelo âmbito das reivindicações da patente iminente e não pelos pormenores específicos apresentados através da descrição e explicação das versões.
[069] Referências [1] ISO/IEC 23003-3:2012: “Unified speech and audio coding” [2] ISO/IEC 14496-3:2009: “Audio” [3] ISO/IEC JTCI/SC29/WG11 MPEG2011/N12232: “USAC Verification Test Report”

Claims (13)

1. Aparelho para decodificar um sinal de áudio codificado (101) que compreende dados de controle da extensão de largura de banda que indicam um primeiro modo de extensão de largura de banda de harmônicos ou um segundo modo de extensão de largura de banda de não harmônicos, caracterizado porcompreender: uma interface de entrada (100) para receber o sinal de áudio codificado que compreende os dados de controle da extensão de largura de banda que indicam o primeiro modo de extensão de largura de banda de harmônicos ou o segundo modo de extensão de largura de banda de não harmônicos; um processador (102) para decodificar o sinal de áudio (101) usando o segundo modo de extensão de largura de banda de não harmônicos; e um controlador (104) para controlar o processador (102) para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos, mesmo quando os dados de controle da extensão de largura de banda indicam o primeiro modo de extensão de largura de banda de harmônicos para o sinal de áudio codificado.
2. Aparelho de acordo com a reivindicação 1, caracterizado poro processador (102) ter recursos de memória e processamento suficientes para decodificar o sinal de áudio codificado usando o segundo modo de extensão de largura de banda de não harmônicos, em que os recursos de memória ou processamento não são suficientes para decodificar o sinal de áudio codificado usando o primeiro modo de extensão de largura de banda de harmônicos.
3. Aparelho de acordo com a reivindicação 1 ou 2, caracterizado por a interface de entrada (100) estar configurada para ler os dados de controle de extensão de largura de banda para determinar se o sinal de áudio codificado deve ser descodificado usando o primeiro modo de extensão de largura de banda de harmônicos ou o segundo modo de extensão de largura de banda de não harmônicos e para guardar os dados de controle da extensão de largura de banda em um registo de controle do processador, e o controlador (104) estar configurado para aceder ao registo de controle do processador e para sobrescrever um valor no registo de controle do processador por um valor que indica o segundo modo de extensão de largura de banda de não harmônicos, quando a interface de entrada (100) guardou um valor que indica o primeiro modo de extensão de largura de banda de harmônicos.
4. Aparelho de acordo com qualquer uma das reivindicações 1 a 3, caracterizado poro sinal de áudio codificado compreender dados comuns de carga útil da extensão de largura de banda (302) para o primeiro modo de extensão de largura de banda de harmônicos e o segundo modo de extensão de largura de banda de não harmônicos e dados adicionais de carga útil (304) para o primeiro modo de extensão de largura de banda de harmônicos, e em que o controlador (104) estar configurado para usar os dados adicionais de carga útil (304) para controlar o processador (102) para modificar uma operação patching realizada pelo processador comparativamente com a operação patching no segundo modo de extensão de largura de banda de não harmônicos, em que a operação patching modificada é uma operação patching de não harmônicos.
5. Aparelho de acordo com a reivindicação 4, caracterizado poros dadas adicionais de carga útil (304) compreenderem uma informação sobre uma característica de harmônicos do sinal de áudio codificado, e em que o controlador (104) estar configurado para modificar um conteúdo da memória temporária patching (828, 830, 832) de uma memória temporária patching usada pelo processador (102) para realizar uma operação patching na decodificação do sinal de áudio codificado, de modo a que uma característica de harmônicos de um sinal patch fique mais próxima da característica de harmônicos do que uma característica de harmônicos de um sinal corrigido sem modificar a memória temporária patching.
6. Aparelho de acordo com a reivindicação 4 e 5, caracterizado poro controlador (104) estar configurado: para calcular (310) uma grelha de harmônicos que indica uma frequência pitch a partir dos dados adicionais de carga útil, para determinar (312) uma informação de origem patching e uma informação de destino patching para uma banda de origem patching com limites de frequência e uma banda de destino patching com limites de frequência; e para modificar (314) os dados dentro da banda de origem patching dentro dos limites de frequência antes ou depois de uma operação patching (914), de modo a que a seção de frequência na banda de origem patching coincida com a grelha de harmônicos se encontre, depois do patching (914), em uma seção de frequência de destino (912) que coincide com a grelha de harmônicos.
7. Aparelho de acordo com qualquer uma das reivindicações 4 a 6, caracterizado por o processador (102) compreender uma memória temporária patching, o processador estar configurado para carregar (400) a memória temporária patching usando os dados comuns de carga útil de extensão de largura de banda, o controlador estar configurado para calcular (402) o valor de desvio da memória temporária usando os dados adicionais de extensão de largura de banda que indicam uma grelha de harmônicos do sinal de áudio codificado usando uma informação de banda de origem patch (903) e uma informação de banda de destino patch (908), o controlador estar configurado para causar (404) uma operação de desvio da memória temporária para o conteúdo da memória temporária; e o processador (102) estar configurado para criar (406, 408) dados corrigidos usando o conteúdo da memória temporária desviado pelo valor de desvio da memória temporária.
8. Aparelho de acordo com a reivindicação 7, caracterizado poro controlador estar configurado para causar (404) a operação de desvio da memória temporária com um reinício cíclico.
9. Aparelho de acordo com qualquer uma das reivindicações 1 a 8, caracterizado poro processador compreender: um decodificador de núcleo (500) para decodificar um sinal de áudio codificado de núcleo (902); um patcher (502) para corrigir uma região de frequência de origem do sinal de áudio de núcleo codificado para uma região de frequência de destino usando os dados de extensão de largura de banda a partir do sinal de áudio codificado de acordo com o modo de extensão de largura de banda de não harmônicos; e um modificador de patch (504) para modificar um sinal corrigido na região de frequência de destino usando os dados de extensão de largura de banda a partir do sinal de áudio codificado.
10. Aparelho de acordo com qualquer uma das reivindicações 1 a 9, caracterizado por os dados de controle da extensão de largura de banda compreenderem uma primeira entidade de dados de controle (114) para um item de áudio que inclui vários quadros de áudio, em que a primeira entidade de dados de controle indica se o primeiro modo de extensão de largura de banda de harmônicos está ativo ou não para a variedade de quadros, uma segunda entidade de dados de controle (116a, 118a, 120a) para cada quadro do sinal de áudio codificado que indica se o primeiro modo de extensão de largura de banda de harmônicos está ativo ou não para cada quadro individual do sinal de áudio codificado, a interface de entrada (100) estar configurada para ler a primeira entidade de dados de controle para o item de áudio e a segunda entidade de dados de controle para cada quadro da variedade de quadro, e o controlador (104) estar configurado para controlar o processador (102) para decodificar o sinal de áudio usando o segundo modo de extensão de largura de banda de não harmônicos independentemente de um valor de uma primeira entidade de dados de controle e independentemente de um valor da segunda entidade de dados de controle.
11. Aparelho de acordo com qualquer uma das reivindicações 1 a 10, caracterizado por o sinal de áudio codificado ser um fluxo de bits conforme definido pelo padrão USAC (Unified Speech and Audio Coding), o processador (102) estar configurado para realizar o segundo modo de extensão de largura de banda de não harmônicos conforme definido pelo padrão USAC, e a interface de entrada estar configurada para emparelhar o fluxo de bits que compreende o sinal de áudio codificado de acordo com o padrão USAC.
12. Aparelho de acordo com qualquer uma das reivindicações 1 a 11, caracterizado poro processador (102) ter recursos de memória e processamento suficientes para decodificar o sinal de áudio codificado usando o segundo modo de extensão de largura de banda de não harmônicos, em que os recursos de memória ou processamento não são suficientes para decodificar o sinal de áudio codificado usando o primeiro modo de extensão de largura de banda de harmônicos, quando o sinal de áudio codificado é um sinal de áudio estéreo codificado ou multicanal, e em que o processador (102) ter recursos de memória e processamento suficientes para decodificar o sinal de áudio codificado usando o segundo modo de extensão de largura de banda de não harmônicos e usando o primeiro modo de extensão de largura de banda de harmônicos, quando o sinal de áudio codificado é um sinal mono codificado.
13. Método para decodificar um sinal de áudio codificado (101) que compreende dados de controle da extensão de largura de banda que indicam um primeiro modo de extensão de largura de banda de harmônicos ou um segundo modo de extensão de largura de banda de não harmônicos, caracterizado porcompreender: receber (100) o sinal de áudio codificado que compreende os dados de controle da extensão de largura de banda que indicam o primeiro modo de extensão de largura de banda de harmônicos ou o segundo modo de extensão de largura de banda de não harmônicos; decodificar (102) o sinal de áudio (101) usando o segundo modo de extensão de largura de banda de não harmônicos; e controlar (104) a decodificação do sinal de áudio, para que o segundo modo de extensão de largura de banda de não harmônicos seja usado na decodificação, mesmo quando os dados de controle de extensão de largura de banda indicam o primeiro modo de extensão de largura de banda de harmônicos para o sinal codificado.
BR112016012689-0A 2013-12-09 2014-11-28 aparelho e método para decodificar um sinal de áudio codificado com baixos recursos computacionais BR112016012689B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP13196305.0 2013-12-09
EP13196305.0A EP2881943A1 (en) 2013-12-09 2013-12-09 Apparatus and method for decoding an encoded audio signal with low computational resources
PCT/EP2014/076000 WO2015086351A1 (en) 2013-12-09 2014-11-28 Apparatus and method for decoding an encoded audio signal with low computational resources

Publications (1)

Publication Number Publication Date
BR112016012689B1 true BR112016012689B1 (pt) 2021-02-09

Family

ID=49725065

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112016012689-0A BR112016012689B1 (pt) 2013-12-09 2014-11-28 aparelho e método para decodificar um sinal de áudio codificado com baixos recursos computacionais

Country Status (11)

Country Link
US (2) US9799345B2 (pt)
EP (2) EP2881943A1 (pt)
JP (1) JP6286554B2 (pt)
KR (1) KR101854298B1 (pt)
CN (1) CN105981101B (pt)
BR (1) BR112016012689B1 (pt)
CA (1) CA2931958C (pt)
ES (1) ES2650941T3 (pt)
MX (1) MX353703B (pt)
RU (1) RU2644135C2 (pt)
WO (1) WO2015086351A1 (pt)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI758146B (zh) 2015-03-13 2022-03-11 瑞典商杜比國際公司 解碼具有增強頻譜帶複製元資料在至少一填充元素中的音訊位元流
TW202341126A (zh) * 2017-03-23 2023-10-16 瑞典商都比國際公司 用於音訊信號之高頻重建的諧波轉置器的回溯相容整合
TWI702594B (zh) * 2018-01-26 2020-08-21 瑞典商都比國際公司 用於音訊信號之高頻重建技術之回溯相容整合
CA3152262A1 (en) 2018-04-25 2019-10-31 Dolby International Ab Integration of high frequency reconstruction techniques with reduced post-processing delay
IL303445B1 (en) * 2018-04-25 2024-02-01 Dolby Int Ab Combining high-frequency audio reconstruction techniques

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE9700772D0 (sv) * 1997-03-03 1997-03-03 Ericsson Telefon Ab L M A high resolution post processing method for a speech decoder
US6850884B2 (en) * 2000-09-15 2005-02-01 Mindspeed Technologies, Inc. Selection of coding parameters based on spectral content of a speech signal
ATE371926T1 (de) * 2004-05-17 2007-09-15 Nokia Corp Audiocodierung mit verschiedenen codierungsmodellen
US8880410B2 (en) * 2008-07-11 2014-11-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for generating a bandwidth extended signal
EP2169670B1 (en) * 2008-09-25 2016-07-20 LG Electronics Inc. An apparatus for processing an audio signal and method thereof
EP2239732A1 (en) * 2009-04-09 2010-10-13 Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. Apparatus and method for generating a synthesis audio signal and for encoding an audio signal
PL2273493T3 (pl) 2009-06-29 2013-07-31 Fraunhofer Ges Forschung Kodowanie i dekodowanie z rozszerzaniem szerokości pasma
KR101826331B1 (ko) * 2010-09-15 2018-03-22 삼성전자주식회사 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법
CN102208188B (zh) * 2011-07-13 2013-04-17 华为技术有限公司 音频信号编解码方法和设备

Also Published As

Publication number Publication date
ES2650941T3 (es) 2018-01-23
CN105981101B (zh) 2020-04-10
KR101854298B1 (ko) 2018-05-03
US20160284359A1 (en) 2016-09-29
US9799345B2 (en) 2017-10-24
EP3080803B1 (en) 2017-10-04
US10332536B2 (en) 2019-06-25
US20170278522A1 (en) 2017-09-28
CA2931958C (en) 2018-10-02
MX353703B (es) 2018-01-24
RU2644135C2 (ru) 2018-02-07
EP3080803A1 (en) 2016-10-19
MX2016007430A (es) 2016-08-19
CA2931958A1 (en) 2015-06-18
JP2016539377A (ja) 2016-12-15
JP6286554B2 (ja) 2018-02-28
WO2015086351A1 (en) 2015-06-18
CN105981101A (zh) 2016-09-28
EP2881943A1 (en) 2015-06-10
KR20160079878A (ko) 2016-07-06

Similar Documents

Publication Publication Date Title
BR112016012689B1 (pt) aparelho e método para decodificar um sinal de áudio codificado com baixos recursos computacionais
ES2897660T3 (es) Decodificación de secuencias de bits de audio con metadatos de replicación de banda espectral mejorada en al menos un elemento de relleno
BR122013014741B1 (pt) método de codificação de sinal de áudio, método de decodificação de sinal de áudio, dispositivo de codificação, dispositivo de decodificação e sistema de processamento de sinal de áudio
BRPI0910796B1 (pt) Codificador de áudio e decodificador de áudio
BR122017018553B1 (pt) Método e aparelho para a determinação de um fator de escala otimizado
ES2965741T3 (es) Aparato para codificar o decodificar una señal multicanal codificada mediante una señal de relleno generada por un filtro de banda ancha
BR112017019185B1 (pt) Codificador de áudio, decodificador de áudio, método para codificar um sinal de áudio e método para decodificar um sinal de áudio codificado
PT2951814T (pt) Ênfase de baixa frequência para codificação com base em lpc em domínio de frequência
ES2651988T3 (es) Transición desde una codificación/decodificación por transformada hacia una codificación/decodificación predictiva
PT2905777T (pt) Método de codificação, método de descodificação, dispositivo de codificação e dispositivo de descodificação
BR112019014125B1 (pt) Método e decodificador para decodificar um fluxo de bits de áudio codificado e mídia legível por computador não transitória
BR112015031605B1 (pt) Decodificador de áudio tendo um módulo de extensão de largura de banda com um módulo de ajuste de energia
AU2015251609B2 (en) Linear prediction coefficient conversion device and linear prediction coefficient conversion method
BR112016027898B1 (pt) Método, entidade de recepção, e, meio de armazenamento não transitório legível por computador para ocultação de perda de quadro
ES2867477T3 (es) Decodificación de secuencias de bits de audio con metadatos de replicación de banda espectral mejorada en al menos un elemento de relleno
BR122019004595B1 (pt) Unidade de processamento de áudio, método de decodificação de um fluxo de bits de áudio codificado e meio legível por computador não transitório

Legal Events

Date Code Title Description
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 28/11/2014, OBSERVADAS AS CONDICOES LEGAIS.