BR122023021774B1 - Aparelho e método para codificar e decodificar um sinal de múltiplos canais - Google Patents

Aparelho e método para codificar e decodificar um sinal de múltiplos canais Download PDF

Info

Publication number
BR122023021774B1
BR122023021774B1 BR122023021774-8A BR122023021774A BR122023021774B1 BR 122023021774 B1 BR122023021774 B1 BR 122023021774B1 BR 122023021774 A BR122023021774 A BR 122023021774A BR 122023021774 B1 BR122023021774 B1 BR 122023021774B1
Authority
BR
Brazil
Prior art keywords
channel
channels
iteration
pair
processing
Prior art date
Application number
BR122023021774-8A
Other languages
English (en)
Other versions
BR122023021774A2 (pt
Inventor
Sascha DICK
Florian SCHUH
Nikolaus Rettelbach
Tobias SCHWEGLER
Richard FÜG
Johannes Hilpert
Matthias Neusinger
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
Priority claimed from EP15172492.9A external-priority patent/EP3067885A1/en
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 BR122023021774A2 publication Critical patent/BR122023021774A2/pt
Publication of BR122023021774B1 publication Critical patent/BR122023021774B1/pt

Links

Abstract

APARELHO E MÉTODO PARA CODIFICAR E DECODIFICAR UM SINAL DE MÚLTIPLOS CANAIS. Trata-se de um aparelho para codificar um sinal de múltiplos canais que tem pelo menos três canais. O aparelho compreende um processador de iteração, um codificador de canal e uma interface de saída. O processador de iteração é configurado para calcular, em uma primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais, para selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e para processar o par selecionado com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais para o par selecionado e para derivar os primeiros canais processados. Além disso, o processador de iteração é configurado para realizar o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados para derivar os segundos parâmetros de múltiplos canais e segundos canais processados. O codificador de canal é configurado para codificar canais resultantes de um processamento de iteração realizado pelo processador de iteração para obter canais codificados. (...).

Description

DESCRIÇÃO
[001] A presente invenção refere-se à codificação/decodificação de áudio e, em particular, à codificação de áudio que explora dependências de sinal entre canais.
[002] A codificação de áudio é o domínio de compressão que lida com redundância de exploração e irrelevância de sinais de áudio. Em MPEG USAC [ISO/IEC 23003-3:2012 - Information technology - MPEG audio technologies Part 3: Unified speech and audio coding], codificação estéreo conjunta de dois canais é realizada com o uso de previsão complexa, MPS 2-1-2 ou estéreo unificado com sinais residuais limitados por banda ou de banda completa. MPEG surround [ISO/IEC 23003-1:2007 - Information technology - MPEG audio technologies Part 1: MPEG Surround] combina hierarquicamente caixas de OTT e TTT para codificação conjunta de áudio de múltiplos canais com ou sem transmissão de sinais residuais. Elementos de Canal de Quadrante MPEG-H aplicam hierarquicamente caixas estéreo MPS 2-1-2 seguida por previsão complexa/caixas estéreo de MS que formam uma árvore de remixagem 4x4 fixada. AC4 [ETSI TS 103 190 V1.1.1 (2014-04) - Digital Audio Compression (AC-4) Standard] introduz novos elementos de 3, 4 e 5 canais que permitem remixar os canais transmitidos por meio de uma matriz de mixagem transmitida e informações de codificação estéreo conjunta subsequente. Além disso, publicações anteriores sugerem o uso de transformadas ortogonais como a Transformada Karhunen-Loeve (KLT) para codificação intensificada de áudio de múltiplos canais [Yang, Dai e Ai, Hongmei e Kyriakakis, Chris e Kuo, C.-C. Jay, 2001: Adaptive Karhunen-Loeve Transform for Enhanced Multichannel Audio Coding, http://ict.usc.edu/pubs/Adaptive%20Karhunen- Loeve%20Transform%20for%20Enhanced %20Multichannel%20Audio%20Coding.pdf].
[003] No contexto de áudio 3D, canais de alto-falantes são distribuídos em várias camadas de altura, resultando em pares de canais horizontal e vertical. A codificação conjunta de somente dois canais conforme definido em USAC não é suficiente para considerar as relações espaciais e perceptuais entre canais. MPEG Surround é aplicado em uma etapa de pré/pós-processamento adicional, sinais residuais são transmitidos individualmente sem a possibilidade de codificação estéreo conjunta, por exemplo, explorar dependências entre sinais residuais verticais esquerdo e direito. Em elementos de N canais de AC-4 dedicado são introduzidos que permitem codificação eficiente de parâmetros de codificação conjunta, mas falham em configurações de alto-falante genéricas com mais canais conforme proposto para novas situações de reprodução imersiva (7.1+4, 22.2). O elemento de canal de MPEG-H Quad é também restrito a somente 4 canais e não pode ser dinamicamente aplicada a canais arbitrários, mas somente um número pré-configurado e fixado de canais.
[004] É um objetivo da presente invenção fornecer um conceito de codificação/decodificação aprimorado.
[005] Esse objetivo é alcançado por um aparelho para codificar um sinal de múltiplos canais que tem pelo menos três canais de acordo com a reivindicação 1, um aparelho para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais de acordo com a reivindicação 12, um método para codificar um sinal de múltiplos canais que tem pelo menos três canais de acordo com a reivindicação 21, um método para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais de acordo com a reivindicação 22, ou um programa de computador de acordo com a reivindicação 23.
[006] Trata-se de um aparelho para codificar um sinal de múltiplos canais que tem pelo menos três canais. O aparelho compreende um processador de iteração, um codificador de canal e uma interface de saída. O processador de iteração é configurado para calcular, em uma primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais, para selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e para processar o par selecionado com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais para o par selecionado e para derivar os primeiros canais processados. Além disso, o processador de iteração é configurado para realizar o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados para derivar os segundos parâmetros de múltiplos canais e segundos canais processados. O codificador de canal é configurado para codificar canais resultantes de um processamento de iteração realizado pelo processador de iteração para obter canais codificados. A interface de saída é configurada para gerar um sinal de múltiplos canais codificado que tem os canais codificados e o primeiro e o segundo parâmetros de múltiplos canais.
[007] Modalidades adicionais fornecem um aparelho para decodificar um sinal de múltiplos canais codificado, sendo que o sinal de múltiplos canais codificado tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais. O aparelho compreende um decodificador de canal e um processador de múltiplos canais. O decodificador de canal é configurado para decodificar os canais codificados para obter canais decodificados. O processador de múltiplos canais é configurado para realizar um processamento de múltiplos canais com o uso de um segundo par dos canais decodificados identificados pelos segundos parâmetros de múltiplos canais e com o uso dos segundos parâmetros de múltiplos canais para obter canais processados e para realizar um processamento adicional de múltiplos canais com o uso de um primeiro par de canais identificado pelos primeiros parâmetros de múltiplos canais e com o uso dos primeiros parâmetros de múltiplos canais, em que o primeiro par de canais compreende pelo menos um canal processado.
[008] Em contraste a conceitos de codificação de múltiplos canais comuns que usam uma trajetória de sinal fixada (por exemplo, árvore de codificação estéreo), modalidades da presente invenção usam uma trajetória de sinal dinâmica que é adaptada às características dos pelo menos três canais de entrada do sinal de entrada de múltiplos canais. Em detalhes, o processador de iteração 102 pode ser adaptado para formar a trajetória de sinal (por exemplo, árvore de estéreo), na primeira etapa de iteração, com base em um valor de correlação entre canais entre cada par dentre os pelo menos três canais CH1 a CH3, para selecionar, na primeira etapa de iteração, um par que tem o valor superior ou um valor acima de um limiar, e, na segunda etapa de iteração, com base em valores de correlação entre canais entre cada par dos pelo menos três canais e canais anteriormente processados correspondentes, para selecionar, na segunda etapa de iteração, um par que tem o valor superior ou um valor acima de um limiar.
[009] Modalidades adicionais fornecem um método para codificar um sinal de múltiplos canais que tem pelo menos três canais. O método compreende: - calcular, em uma primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais, selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e processar o par selecionado com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais para o par selecionado e para derivar os primeiros canais processados; - realizar o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados para derivar os segundos parâmetros de múltiplos canais e segundos canais processados; - codificar canais resultantes de um processamento de iteração realizado pelo processador de iteração para obter canais codificados; e - gerar um sinal de múltiplos canais codificado que tem os canais codificados e o primeiro e o segundo parâmetros de múltiplos canais.
[010] Modalidades adicionais fornecem um método para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais. O método compreende: - decodificar os canais codificados para obter canais decodificados; e - realizar um processamento de múltiplos canais com o uso de um segundo par dos canais decodificados identificado pelos segundos parâmetros de múltiplos canais e com o uso dos segundos parâmetros de múltiplos canais para obter canais processados, e realizar um processamento adicional de múltiplos canais com o uso de um primeiro par de canais identificado pelos primeiros parâmetros de múltiplos canais e com o uso dos primeiros parâmetros de múltiplos canais, em que o primeiro par de canais compreende pelo menos um canal processado.
[011] As modalidades da presente invenção são descritas no presente documento fazendo referência aos desenhos anexos. A Figura 1 mostra um diagrama em blocos esquemático de um aparelho para codificar um sinal de múltiplos canais que tem pelo menos três canais, de acordo com uma modalidade; A Figura 2 mostra um diagrama em blocos esquemático de um aparelho para codificar um sinal de múltiplos canais que tem pelo menos três canais, de acordo com uma modalidade; A Figura 3 mostra um diagrama em blocos esquemático de uma caixa estéreo, de acordo com uma modalidade; A Figura 4 mostra um diagrama em blocos esquemático de um aparelho para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais, de acordo com uma modalidade; A Figura 5 mostra um fluxograma de um método para codificar um sinal de múltiplos canais que tem pelo menos três canais, de acordo com uma modalidade; e A Figura 6 mostra um fluxograma de um método para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais, de acordo com uma modalidade.
[012] Elementos iguais ou equivalentes ou elementos com funcionalidade igual ou equivalente são denotados na descrição a seguir por numerais de referência iguais ou equivalentes.
[013] Na descrição a seguir, uma pluralidade de detalhes é apresentada para fornecer uma explicação mais completa de modalidades da presente invenção. Entretanto, será evidente para um indivíduo versado na técnica que as modalidades da presente invenção podem ser praticadas sem esses detalhes específicos. Em outros exemplos, estruturas e dispositivos bem conhecidos são mostrados em forma de diagrama de blocos em vez de em detalhes a fim de evitar obscurecer as modalidades da presente invenção. Além disso, recursos das diferentes modalidades descritas doravante podem ser combinados entre si, a mesmos que observado especificamente de outra forma.
[014] A Figura 1 mostra um diagrama em blocos esquemático de um aparelho (codificador) 100 para codificar um sinal de múltiplos canais 101 que tem pelo menos três canais CH1 a CH3. O aparelho 100 compreende um processador de iteração 102, um codificador de canal 104 e uma interface de saída 106.
[015] O processador de iteração 102 é configurado para calcular, em uma primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais CH1 a CH3 para selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e para processar o par selecionado com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais MCH_PAR1 para o par selecionado e para derivar os primeiros canais processados P1 e P2. Além disso, o processador de iteração 102 é configurado para realizar o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados P1 ou P2 para derivar os segundos parâmetros de múltiplos canais MCH_PAR2 e segundos canais processados P3 e P4.
[016] Por exemplo, conforme indicado na Figura 1, o processador de iteração 102 pode calcular na primeira etapa de iteração um valor de correlação entre canais entre um primeiro par dos pelo menos três canais CH1 a CH3, sendo que o primeiro par consiste em um primeiro canal CH1 e um segundo canal CH2, um valor de correlação entre canais entre um segundo par dos pelo menos três canais CH1 a CH3, sendo que o segundo par consiste no segundo canal CH2 e um terceiro canal CH3, e um valor de correlação entre canais entre um terceiro par dos pelo menos três canais CH1 a CH3, sendo que o terceiro par consiste no primeiro canal CH1 e no terceiro canal CH3.
[017] Na Figura 1 presume-se que, na primeira etapa de iteração, o terceiro par que consiste no primeiro canal CH1 e no terceiro canal CH3 compreende o maior valor de correlação entre canais, de modo que o processador de iteração 102 selecione, na primeira etapa de iteração, o terceiro par que tem o maior valor de correlação entre canais e processa o par selecionado, isto é, o terceiro par, com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais MCH_PAR1 para o par selecionado e para derivar os primeiros canais processados P1 e P2.
[018] Além disso, o processador de iteração 102 pode ser configurado para calcular, na segunda etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais CH1 a CH3 e os canais processados P1 e P2, para selecionar, na segunda etapa de iteração, um par que tem um valor superior de correlação entre canais ou que tem um valor acima de um limiar. Desse modo, o processador de iteração 102 pode ser configurado para não selecionar o par selecionado da primeira etapa de iteração na segunda etapa de iteração (ou em qualquer etapa de iteração adicional).
[019] Em referência ao exemplo mostrado na Figura 1, o processador de iteração 102 pode calcular também um valor de correlação entre canais entre um quarto par de canais que consiste no primeiro canal CH1 e no primeiro canal processado P1, um valor de correlação entre canais entre um quinto par que consiste no primeiro canal CH1 e no segundo canal processado P2, um valor de correlação entre canais entre um sexto par que consiste no segundo canal CH2 e no primeiro canal processado P1, um valor de correlação entre canais entre um sétimo par que consiste no segundo canal CH2 e no segundo canal processado P2, um valor de correlação entre canais entre um oitavo par que consiste no terceiro canal CH3 e no primeiro canal processado P1, um valor de intercorrelação entre um nono par que consiste no terceiro canal CH3 e no segundo canal processado P2, e um valor de correlação entre canais entre um décimo par que consiste no primeiro canal processado P1 e no segundo canal processado P2.
[020] Na Figura 1, presume-se que, na segunda etapa de iteração, o sexto par que consiste no segundo canal CH2 e no primeiro canal processado P1 compreende o maior valor de correlação entre canais, de modo que o processador de iteração 102 selecione, na segunda etapa de iteração, o sexto par e processa o par selecionado, isto é, o sexto par, com o uso de uma operação de processamento de múltiplos canais para derivar os segundos parâmetros de múltiplos canais MCH_PAR2 para o par selecionado e para derivar os segundos canais processados P3 e P4.
[021] O processador de iteração 102 pode ser configurado para selecionar somente um par quando a diferença de nível do par for menor do que um limiar, sendo que o limiar é menor do que 40 dB, 25 dB, 12 dB ou menor do que 6 dB. Sendo assim, os limiares de 25 ou 40 dB correspondem aos ângulos de rotação de 3 ou 0,5 graus.
[022] O processador de iteração 102 pode ser configurado para calcular valores de correlação de número inteiro normalizados, em que o processador de iteração 102 pode ser configurado para selecionar um par, quando o valor de correlação de número inteiro é maior do que por exemplo 0,2 ou preferencialmente 0,3.
[023] Além disso, o processador de iteração 102 pode fornecer os canais resultantes do processamento de múltiplos canais ao codificador de canal 104. Por exemplo, em referência à Figura 1, o processador de iteração 102 pode fornecer o terceiro canal processado P3 e o quarto canal processado P4 resultante do processamento de múltiplos canais realizados na segunda etapa de iteração e do segundo canal processado P2 resultante do processamento de múltiplos canais realizado na primeira etapa de iteração ao codificador de canal 104. Sendo assim, o processador de iteração 102 pode fornecer somente aqueles canais processados ao codificador de canal 104 que não são (mais) processados em uma etapa de iteração subsequente. Conforme mostrado na Figura 1, o primeiro canal processado P1 não é fornecido ao codificador de canal 104 visto que o mesmo é adicionalmente processado na segunda etapa de iteração.
[024] O codificador de canal 104 pode ser configurado para codificar os canais P2 a P4 resultante do processamento de iteração (ou processamento de múltiplos canais) realizado pelo processador de iteração 102 para obter canais codificados E1 a E3.
[025] Por exemplo, o codificador de canal 104 pode ser configurado para usar codificadores mono (ou caixas mono, ou ferramentas mono) 120_1 a 120_3 para codificar os canais P2 a P4 resultantes do processamento de iteração (ou processamento de múltiplos canais). As caixas mono podem ser configuradas para codificar os canais de modo que menos bits sejam exigidas para codificar um canal que tem menos energia (ou uma amplitude menor) do que para codificar um canal que tem mais energia (ou uma maior amplitude). As caixas mono 120_1 a 120_3 podem ser, por exemplo, codificadores de áudio baseados em transformação. Além disso, o codificador de canal 104 pode ser configurado para usar codificadores estéreo (por exemplo, codificadores estéreo paramétricos, ou codificadores estéreo com perdas) para codificar os canais P2 a P4 resultantes do processamento de iteração (ou processamento de múltiplos canais).
[026] A interface de saída 106 pode ser configurada para geração e sinal de múltiplos canais codificado 107 que tem os canais codificados E1 a E3 e o primeiro e o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2.
[027] Por exemplo, a interface de saída 106 pode ser configurada para gerar o sinal de múltiplos canais codificado 107 como um sinal em série ou fluxo de bits em série, e de modo que os segundos parâmetros de múltiplos canais MCH_PAR2 estejam no sinal codificado 107 antes dos primeiros parâmetros de múltiplos canais MCH_PAR1. Desse modo, um decodificador, cuja modalidade será descrita posteriormente em relação à Figura 4, receberá os segundos parâmetros de múltiplos canais MCH_PAR2 antes dos primeiros parâmetros de múltiplos canais MCH-PAR1.
[028] Na Figura 1 o processador de iteração 102 realiza de modo exemplificador duas operações de processamento de múltiplos canais, uma operação de processamento de múltiplos canais na primeira etapa de iteração e uma operação de processamento de múltiplos canais na segunda etapa de iteração. Naturalmente, o processador de iteração 102 também pode realizar operações de processamento adicional de múltiplos canais em etapas de iteração subsequentes. Desse modo, o processador de iteração 102 pode ser configurado para realizar etapas de iteração até que um critério de término de interação é alcançado. O critério de término de interação pode ser que um número máximo de etapas de iteração seja igual ou maior do que um número total de canais do sinal de múltiplos canais 101 em dois, ou que o critério de término de interação seja, quando os valores de correlação entre canais não têm um valor maior do que o limiar, o limiar que preferencialmente maior do que 0,2 ou o limiar que é preferencialmente 0,3. Em modalidades adicionais, o critério de término de interação pode ser que um número máximo de etapas de iteração seja igual ou maior do que um número total de canais do sinal de múltiplos canais 101, ou que o critério de término de interação é, quando os valores de correlação entre canais não têm um valor maior do que o limiar, o limiar que é preferencialmente maior do que 0,2 ou o limiar que é preferencialmente 0,3.
[029] Para fins de ilustração, as operações de processamento de múltiplos canais realizadas pelo processador de iteração 102 na primeira etapa de iteração e na segunda etapa de iteração são ilustrados de modo exemplificador na Figura 1 por caixas de processamento 110 e 112. As caixas de processamento 110 e 112 podem ser implantadas em hardware ou software. As caixas de processamento 110 e 112 podem ser caixas estéreo, por exemplo.
[030] Sendo assim, a dependência de sinal entre canais pode ser explorada aplicando-se hierarquicamente ferramentas de codificação estéreo conjunta conhecidas. Em contraste às abordagens de MPEG anteriores, os pares de sinal a serem processados não são predeterminados por uma trajetória de sinal fixada (por exemplo, árvore de codificação estéreo), mas podem ser mudados dinamicamente para se adaptarem a características de sinal de entrada. As entradas da caixa estéreo real podem ser (1) canais não processados, tais como os canais CH1 a CH3, (2) saídas de uma caixa estéreo precedente, tal como os sinais processados P1 a P4, ou (3) uma combinação de um canal não processado e uma saída de uma caixa estéreo precedente.
[031] O processamento dentro da caixa estéreo 110 e 112 pode ser tanto baseado em previsão (como a caixa de previsão complexa in USAC) como baseado em KLT/PCA (os canais de entrada são girados (por exemplo, por meio de uma matriz de rotação de 2x2) no codificador para maximizar a compactação de energia, isto é, concentrar energia de sinal em um canal, no decodificador os sinais girados serão retransformados às direções de sinal de entrada originais).
[032] Em uma possível implantação do codificador 100, (1) o codificador calcula uma correlação entre canais entre cada par de canais e seleciona um par de sinais adequado fora dos sinais de entrada e aplica a ferramenta estéreo aos canais selecionados; (2) o codificador recalcula a correlação entre canais entre todos os canais (os canais não processados assim como os canais de saída intermediários processados) e seleciona um par de sinais adequado do sinais de entrada e aplica a ferramenta estéreo aos canais selecionados; e (3) o codificador repete a etapa (2) até que toda a correlação entre canais esteja abaixo de um limiar ou se um número máximo de transformações for aplicado.
[033] Conforme já mencionado, os pares de sinal a serem processados pelo codificador 100, ou mais precisamente, o processador de iteração 102, não são predeterminados por uma trajetória de sinal fixada (por exemplo, árvore de codificação estéreo), mas podem ser mudados dinamicamente para se adaptar às características de sinal de entrada. Sendo assim, o codificador 100 (ou o processador de iteração 102) pode ser configurado para construir a árvore de estéreo em dependência nos pelo menos três canais CH1 a CH3 do sinal (de entrada) de múltiplos canais 101. Em outras palavras, o codificador 100 (ou o processador de iteração 102) pode ser configurado para formar a árvore de estéreo com base em uma correlação entre canais (por exemplo, calculando-se, na primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais CH1 a CH3, para selecionar, na primeira etapa de iteração, um par que tem o valor superior ou um valor acima de um limiar, e calculando-se, em uma segunda etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais e canais anteriormente processados, para selecionar, na segunda etapa de iteração, um par que tem o valor superior ou um valor acima de um limiar). De acordo com um uma abordagem de etapa, uma matriz de correlação pode ser calculada para possivelmente cada interação que contém as correlações de tudo, em canais de interações anteriores possivelmente processados.
[034] Conforme indicado acima, o processador de iteração 102 pode ser configurado para derivar primeiros parâmetros de múltiplos canais MCH_PAR1 para o par selecionado na primeira etapa de iteração e para derivar os segundos parâmetros de múltiplos canais MCH_PAR2 para o par selecionado na segunda etapa de iteração. Os primeiros parâmetros de múltiplos canais MCH_PAR1 podem compreender uma primeira identificação de par de canais (ou índice) que identifica (ou sinaliza) o par de canais selecionados na primeira etapa de iteração, em que os segundos parâmetros de múltiplos canais MCH_PAR2 podem compreender uma segunda identificação de par de canais (ou índice) que identifica (ou sinaliza) o par de canais selecionados na segunda etapa de iteração.
[035] Em seguida, uma indexação eficiente de sinais de entrada é descrita. Por exemplo, pares de canal podem ser sinalizados de modo eficiente com o uso de um índice exclusivo para cada par, dependendo do número total de canais. Por exemplo, a indexação de pares para seus canais pode ser conforme mostrado na seguinte tabela:
[036] Por exemplo, na tabela acima, o índice 5 pode sinalizar o par que consiste no primeiro canal e no segundo canal. De modo similar, o índice 6 pode sinalizar o par que consiste no primeiro canal e no terceiro canal.
[037] O número total de possíveis índices de par de canais para n canais pode ser calculado para: numPairs = numChannels*(numChannels-1)/2
[038] Portanto, o número de bits necessário para sinalizar uma quantidade de par de canais para: numBits = floor(log2(numPairs-1))+1
[039] Além disso, o codificador 100 pode usar uma máscara de canal. A configuração da ferramenta de múltiplos canais pode conter uma máscara de canal que indica para quais canais a ferramenta é ativa. Desse modo, LFEs (LFE = efeitos de baixa frequência/canais de intensificação) podem ser removidos da indexação de par de canais, permitindo uma codificação mais eficiente. Por exemplo, para uma definição 11.1, isso reduz o número de índices de par de canais de 12*11/2=66 a 11*10/2 = 55, permitindo sinalização com 6 em vez de 7 bits. Esse mecanismo também pode ser usado para excluir canais destinados a serem objetos mono (por exemplo múltiplas faixas de linguagem). Na decodificação da máscara de canal (channelMask), um mapa de canal (channelMap) pode ser gerado para permitir o remapeamento de índices de par de canais aos canais de decodificador.
[040] Ademais, o processador de iteração 102 pode ser configurado para derivação, para um primeiro quadro, uma pluralidade de indicações de par selecionado, em que a interface de saída 106 pode ser configurada para incluir, no sinal de múltiplos canais 107, para um segundo quadro, seguindo o primeiro quadro, um indicador de manutenção, que indica que o segundo quadro tem a mesma pluralidade de indicações de par selecionado que o primeiro quadro.
[041] O indicador de manutenção ou o sinalizador de árvore de manutenção pode ser usado para sinalizar que nenhuma árvore nova é transmitida, mas a última árvore de estéreo deve ser usada. A mesma pode ser usada para evitar transmissão múltipla da mesma configuração de árvore de estéreo se as propriedades de correlação de canal permanecerem estacionárias por um longo tempo.
[042] A Figura 2 mostra um diagrama em blocos esquemático de uma caixa estéreo 110, 112. A caixa estéreo 110, 112 compreende entradas para um primeiro sinal de entrada I1 e um segundo sinal de entrada I2, e saídas para um primeiro sinal de saída O1 e um segundo sinal de saída O2. Conforme indicado na Figura 2, dependências dos sinais de saída O1 e O2 dos sinais de entrada I1 e I2 podem ser descritas pelos parâmetros s S1 a S4.
[043] O processador de iteração 102 pode usar (ou compreender) caixas estéreo 110,112 de modo a realizar as operações de processamento de múltiplos canais nos canais de entrada e/ou canais processados de modo a derivar (mais) canais processados. Por exemplo, o processador de iteração 102 pode ser configurado para usar caixas estéreo de rotação 110,112 baseadas em previsão genérica baseada ou baseadas em KLT (Transformação Karhunen-Loève).
[044] Um codificador genérico (ou caixa estéreo lateral de codificador) pode ser configurado para codificar os sinais de entrada I1 e I2 para obter os sinais de saída O1 e O2 com base na equação:
[045] Um decodificador (ou caixa estéreo lateral de decodificador) genérico pode ser configurado para decodificar os sinais de entrada I1 e I2 para obter os sinais de saída O1 e O2 com base na equação:
[046] Um codificador (ou caixa estéreo lateral de codificador) baseado em previsão pode ser configurado para codificar os sinais de entrada I1 e I2 para obter os sinais de saída O1 e O2 com base na equação em que p é o coeficiente de previsão.
[047] Um decodificador (ou caixa estéreo lateral de decodificador) baseado em previsão pode ser configurado para decodificar os sinais de entrada I1 e I2 para obter os sinais de saída O1 e O2 com base na equação:
[048] Um codificador de rotação (ou caixa estéreo lateral de codificador) baseado em KLT pode ser configurado para codificar os sinais de entrada I1 a I2 para obter os sinais de saída O1 e O2 com base na equação:
[049] Um decodificador de rotação baseado em KLT (ou caixa estéreo lateral de decodificador) pode ser configurado para decodificar os sinais de entrada I1 e I2 para obter os sinais de saída O1 e O2 com base na equação (rotação inversa):
[050] A seguir’ um cálculo do ângulo de rotação α para a rotação baseada em KLT é descrito.
[051] O ângulo de rotação α para a rotação baseada em KLT pode ser definida como: com cxy sendo as entradas de uma matriz de correlação não normalizada, em que cu, c22 são as energias de canal.
[052] Isso pode ser implantado com o uso da função atan2 para permitir a diferenciação entre correlações negativas no numerador e diferença de energia negativa no denominador: alfa = 0,5*atan2(2*correlação[ch1][ch2], (correlação[ch1][ch1] - correlação[ch2][ch2]));
[053] Além disso, o processador de iteração 102 pode ser configurado para calcular uma correlação entre canais com o uso de um quadro de cada canal que compreende uma pluralidade de bandas de modo que um único valor de correlação entre canais para a pluralidade de bandas seja obtido, em que o processador de iteração 102 pode ser configurado para realizar o processamento de múltiplos canais para cada uma dentre a pluralidade de bandas de modo que o primeiro ou o segundo parâmetros de múltiplos canais sejam obtidos de cada uma dentre a pluralidade de bandas.
[054] Sendo assim, o processador de iteração 102 pode ser configurado para calcular parâmetros estéreos no processamento de múltiplos canais, em que o processador de iteração 102 pode ser configurado para realizar somente um processamento estéreo em bandas, no qual um parâmetro estéreo é maior do que um limiar quantizado para zero definido por um quantizador estéreo (por exemplo, codificador de rotação baseado em KLT). Os parâmetros estéreos podem ser, por exemplo, MS Ligado/Desligado ou ângulos de rotação ou coeficientes de previsão).
[055] Por exemplo, o processador de iteração 102 pode ser configurado para calcular ângulos de rotação no processamento de múltiplos canais, em que o processador de iteração 102 pode ser configurado para realizar somente um processamento de rotação em bandas, nos quais um ângulo de rotação é maior do que um limiar quantizado para zero definido por um quantizador de ângulo de rotação (por exemplo, codificador de rotação baseado em KLT).
[056] Desse modo, o codificador 100 (ou interface de saída 106) pode ser configurado para transmitir as informações de transformação/rotação tanto como um parâmetro para o espectro completo (caixa de banda completa) ou como múltiplos parâmetros dependentes de frequência para partes do espectro.
[057] O codificador 100 pode ser configurado para gerar o fluxo de bits 107 com base nas tabelas a seguir: TABELA 1 — SINTAXE DE mpegh3daExtElementConfig() TABELA 21 — SINTAXE DE MCCConfig(), NOTA: O elemento ID_USAC_EXT correspondente deve ser antes de qualquer elemento de áudio do determinado grupo de sinal grp. TABELA 32 — SINTAXE DE MultichannelCodingBoxBandWise() TABELA 4 — SINTAXE DE MultichannelCodingBoxFullband() TABELA 5 — SINTAXE DE MultichannelCodingFrame() TABELA 6 — VALOR DE usacExtElementType TABELA 7 — INTERPRETAÇÃO DE BLOCOS DE DADOS PARA DECODIFICAÇÃO DE CARGA DE EXTENSÃO
[058] A Figura 3 mostra um diagrama em blocos esquemático de um processador de iteração 102, de acordo com uma modalidade. Na modalidade mostrada na Figura 3, o sinal de múltiplos canais 101 é um sinal de canal 5.1 que tem seis canais: um canal esquerdo L, um canal direito R, um canal surround esquerdo Ls, um canal surround direito Rs, um canal central C e um canal de efeitos de baixa frequência LFE.
[059] Conforme indicado na Figura 3, o canal de LFE não é processado pelo processador de iteração 102. Esse pode ser o caso visto que os valores de correlação entre canais entre o canal de LFE e cada um dos outros cinco canais L, R, Ls, Rs, e C devem ser pequeno, ou visto que a máscara de canal indica não processar o canal de LFE, que será assumido a seguir.
[060] Em uma primeira etapa de iteração, o processador de iteração 102 calcula os valores de correlação entre canais entre cada par dos cinco canais L, R, Ls, Rs, e C, para selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar. Na Figura 3, presume- se que o canal esquerdo L e o canal direito R têm o valor superior, de modo que o processador de iteração 102 processe o canal esquerdo L e o canal direito R com o uso de uma caixa estéreo (ou ferramenta estéreo) 110, que realiza a operação de processamento de operação de múltiplos canais, para derivar o primeiro e o segundo canais processados P1 e P2.
[061] Em uma segunda etapa de iteração, o processador de iteração 102 calcula valores de correlação entre canais entre cada par dos cinco canais L, R, Ls, Rs, e C e os canais processados P1 e P2, para selecionar, na segunda etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar. Na Figura 3, presume-se que o canal surround esquerdo Ls e o canal surround direito Rs têm o valor superior, de modo que o processador de iteração 102 processe o canal surround esquerdo Ls e o canal surround direito Rs com o uso da caixa estéreo (ou ferramenta estéreo) 112, para derivar o terceiro e o quarto canais processados P3 e P4.
[062] Em uma terceira etapa de iteração, o processador de iteração 102 calcula valores de correlação entre canais entre cada par dos cinco canais L, R, Ls, Rs, e C e os canais processados P1 a P4, para selecionar, na terceira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar. Na Figura 3, presume-se que o primeiro canal processado P1 e o terceiro canal processado P3 têm o valor superior, de modo que o processador de iteração 102 processe o primeiro canal processado P1 e o terceiro canal processado P3 com o uso da caixa estéreo (ou ferramenta estéreo) 114, para derivar o quinto e sexto canais processados P5 e P6.
[063] Em uma quarta etapa de iteração, o processador de iteração 102 calcula valores de correlação entre canais entre cada par dos cinco canais L, R, Ls, Rs, e C e os canais processados P1 a P6, para selecionar, na quarta etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar. Na Figura 3, presume-se que o quinto canal processado P5 e o canal central C têm o valor superior, de modo que o processador de iteração 102 processe o quinto canal processado P5 e o canal central C com o uso da caixa estéreo (ou ferramenta estéreo) 115, para derivar o sétimo e o oitavo canais processados P7 e P8.
[064] As caixas estéreo 110 a 116 podem ser caixas estéreo de MS, isto é, caixas de estereofonia intermediária/lateral configuradas para fornecer um canal intermediário e um canal lateral. O canal intermediário pode ser a soma dos canais de entrada da caixa estéreo, em que o canal lateral pode ser a diferença entre os canais de entrada da caixa estéreo. Além disso, as caixas estéreo 110 e 116 podem ser caixas de rotação ou caixas de previsão estéreo.
[065] Na Figura 3, o primeiro canal processado P1, o terceiro canal processado P3 e o quinto canal processado P5 podem ser canais intermediários, em que o segundo canal processado P2, o quarto canal processado P4 e o sexto par canal processado P6 podem ser canais laterais.
[066] Além disso, conforme indicado na Figura 3, o processador de iteração 102 pode ser configurado para realizar o cálculo, a seleção e o processamento na segunda etapa de iteração e, se for aplicável, em qualquer etapa de iteração adicional com o uso dos canais de entrada L, R, Ls, Rs, e C e (somente) os canais intermediários P1, P3 e P5 dos canais processados. Em outras palavras, o processador de iteração 102 pode ser configurado para não usar os canais laterais P1, P3 e P5 dos canais processados no cálculo, a seleção e o processamento na segunda etapa de iteração e, se for aplicável, em qualquer etapa de iteração adicional.
[067] A Figura 4 mostra um diagrama em blocos esquemático de um aparelho (decodificador) 200 para decodificar um sinal de múltiplos canais codificado 107 que tem canais codificados E1 a E3 e pelo menos o primeiro e o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2. O aparelho 200 compreende um decodificador de canal 202 e um processador de múltiplos canais 204.
[068] O decodificador de canal 202 é configurado para decodificar os canais codificados E1 a E3 para obter canais decodificados em D1 a D3.
[069] Por exemplo, o decodificador de canal 202 pode compreender pelo menos três decodificadores mono (ou caixas mono, ou ferramentas mono) 206_1 a 206_3, em que cada um dos decodificadores mono 206_1 a 206_3 pode ser configurado para decodificar um dentre os pelo menos três canais codificados E1 a E3, para obter o respectivo canal decodificado E1 a E3. Os decodificadores mono 206_1 a 206_3 podem ser, por exemplo, decodificadores de áudio baseados em transformação.
[070] O processador de múltiplos canais 204 é configurado para realizar um processamento de múltiplos canais com o uso de um segundo par dos canais decodificados identificados pelos segundos parâmetros de múltiplos canais MCH_PAR2 e com o uso dos segundos parâmetros de múltiplos canais MCH_PAR2 para obter canais processados, e para realizar um processamento adicional de múltiplos canais com o uso de um primeiro par de canais identificado pelos primeiros parâmetros de múltiplos canais MCH_PAR1 e com o uso dos primeiros parâmetros de múltiplos canais MCH_PAR1, em que o primeiro par de canais compreende pelo menos um canal processado.
[071] Conforme indicado na Figura 4 a título de exemplo, os segundos parâmetros de múltiplos canais MCH_PAR2 podem indicar (ou sinalizar) que o segundo par de canais decodificados consiste no primeiro canal decodificado D1 e no segundo canal decodificado D2. Desse modo, o processador de múltiplos canais 204 realiza um processamento de múltiplos canais com o uso do segundo par dos canais decodificados que consiste no primeiro canal decodificado D1 e no segundo canal decodificado D2 (identificados pelos segundos parâmetros de múltiplos canais MCH_PAR2) e com o uso dos segundos parâmetros de múltiplos canais MCH_PAR2, para obter os canais processados P1* e P2*. Os primeiros parâmetros de múltiplos canais MCH_PAR1 podem indicar que o primeiro par de canais decodificados consiste no primeiro canal processado P1* e no terceiro canal decodificado D3. Desse modo, o processador de múltiplos canais 204 realiza o processamento adicional de múltiplos canais com o uso desse primeiro par de canais decodificados que consiste no primeiro canal processado P1* e no terceiro canal decodificado D3 (identificados pelos primeiros parâmetros de múltiplos canais MCH_PAR1) e com o uso dos primeiros parâmetros de múltiplos canais MCH_PAR1, para obter canais processados P3* e P4*.
[072] Além disso, o processador de múltiplos canais 204 pode fornecer o terceiro canal processado P3* como primeiro canal CH1, o quarto canal processado P4* como terceiro canal CH3 e o segundo canal processado P2* como segundo canal CH2.
[073] Presumindo que o decodificador 200 mostrado na Figura 4 recebe o sinal de múltiplos canais codificado 107 do codificador 100 mostrado na Figura 1, o primeiro canal decodificado D1 do decodificador 200 pode ser equivalente ao terceiro canal processado P3 do codificador 100, em que o segundo canal decodificado D2 do decodificador 200 pode ser equivalente ao quarto canal processado P4 do codificador 100, e em que o terceiro canal decodificado D3 do decodificador 200 pode ser equivalente ao segundo canal processado P2 do codificador 100. Além disso, o primeiro canal processado P1* do decodificador 200 pode ser equivalente ao primeiro canal processado P1 do codificador 100.
[074] Além disso, o sinal de múltiplos canais codificado 107 pode ser um sinal em série, em que os segundos parâmetros de múltiplos canais MCH_PAR2 são recebidos, no decodificador 200, antes dos primeiros parâmetros de múltiplos canais MCH_PAR1. Nesse caso, o processador de múltiplos canais 204 pode ser configurado para processar os canais decodificados em uma ordem, na qual os parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 são recebidos pelo decodificador. No exemplo mostrado na Figura 4, o decodificador recebe os segundos parâmetros de múltiplos canais MCH_PAR2 antes dos primeiros parâmetros de múltiplos canais MCH_PAR1 e realiza desse modo o processamento de múltiplos canais com o uso do segundo par dos canais decodificados (que consiste no primeiro e no segundo canais decodificados D1 e D2) identificados pelo segundo parâmetro de múltiplos canais MCH_PAR2 antes de realizar o processamento de múltiplos canais com o uso do primeiro par dos canais decodificados (que consiste no primeiro canal processado P1* e o terceiro canal decodificado D3) identificados pelo primeiro parâmetro de múltiplos canais MCH_PAR1.
[075] Na Figura 4, o processador de múltiplos canais 204 realiza de modo exemplificador duas operações de processamento de múltiplos canais. Para fins de ilustração, as operações de processamento de múltiplos canais realizadas pelo processador de múltiplos canais 204 são ilustradas na Figura 4 por caixas de processamento 208 e 210. As caixas de processamento 208 e 210 podem ser implantadas em hardware ou software. As caixas de processamento 208 e 210 pode ser, por exemplo, caixas estéreo, conforme discutido acima em referência ao codificador 100, tais como decodificadores genéricos (ou caixas estéreo laterais de decodificador), decodificadores baseados em previsão (ou caixas estéreo laterais de decodificador) ou decodificadores de rotação baseada em KLT (ou caixas estéreo laterais de decodificador).
[076] Por exemplo, o codificador 100 pode usar codificadores de rotação baseada em KLT (ou caixas estéreo laterais de codificador). Nesse caso, o codificador 100 pode derivar o primeiro e o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 de modo que o primeiro e o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 compreendam ângulos de rotação. Os ângulos de rotação podem ser codificados de modo diferente. Portanto, o processador de múltiplos canais 204 do decodificador 200 pode compreender um decodificador diferencial para decodificar de modo diferente os ângulos de rotação codificados de modo diferente.
[077] O aparelho 200 pode compreender adicionalmente uma interface de entrada 212 configurada para receber e processar o sinal de múltiplos canais codificado 107, para fornecer os canais codificados E1 a E3 ao decodificador de canal 202 e o primeiro e segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 ao processador de múltiplos canais 204.
[078] Conforme já mencionado, um indicador de manutenção (ou sinalizador de árvore de manutenção) pode ser usado para sinalizar que nenhuma nova árvore é transmitida, mas a última árvore de estéreo deve ser usada. A mesma pode ser usada para evitar transmissão múltipla da mesma configuração de árvore de estéreo se as propriedades de correlação de canal permanecerem estacionárias por um longo tempo.
[079] Portanto, quando o sinal de múltiplos canais codificado 107 compreende, para um primeiro quadro, o primeiro ou o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 e, para um segundo quadro, seguindo o primeiro quadro, o indicador de manutenção, o processador de múltiplos canais 204 pode ser configurado para realizar o processamento de múltiplos canais ou o processamento adicional de múltiplos canais no segundo quadro ao mesmo segundo par ou o mesmo primeiro par de canais que o usado no primeiro quadro.
[080] O processamento de múltiplos canais e o processamento adicional de múltiplos canais podem compreender um processamento estéreo com o uso de um parâmetro estéreo, em que, para bandas de fator de escala individuais ou grupos de bandas de fator de escala dos canais decodificados D1 a D3, um primeiro parâmetro estéreo é incluído no primeiro parâmetro de múltiplos canais MCH_PAR1 e um segundo parâmetro estéreo é incluído no segundo parâmetro de múltiplos canais MCH_PAR2. Sendo assim, o primeiro parâmetro estéreo e o segundo parâmetro estéreo podem ser do mesmo tipo, tais como ângulos de rotação ou coeficientes de previsão. Naturalmente, o primeiro parâmetro estéreo e o segundo parâmetro estéreo podem ser de tipos diferentes. Por exemplo, o primeiro parâmetro estéreo pode ser um ângulo de rotação, em que o segundo parâmetro estéreo pode ser um coeficiente de previsão, ou vice-versa.
[081] Além disso, o primeiro ou o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 podem compreender uma máscara de processamento de múltiplos canais que indica quais bandas de fator de escala são processadas com múltiplos canais e quais bandas de fator de escala não são processadas com múltiplos canais. Sendo assim, o processador de múltiplos canais 204 pode ser configurado para não realizar o processamento de múltiplos canais nas bandas de fator de escala indicados pela máscara de processamento de múltiplos canais.
[082] O primeiro e o segundo parâmetros de múltiplos canais MCH_PAR1 e MCH_PAR2 pode incluir, cada um, uma identificação de par de canais (ou índice), em que o processador de múltiplos canais 204 pode ser configurado para decodificar as identificações de par de canais (ou indexes) com o uso de uma regra de decodificação predefinida ou uma regra de decodificação indicada no sinal de múltiplos canais codificado.
[083] Por exemplo, pares de canal podem ser sinalizados de modo eficiente com o uso de um índice exclusivo para cada par, dependendo do número total de canais, conforme descrito acima em referência ao codificador 100.
[084] Além disso, a regra de decodificação pode ser uma regra de decodificação Huffman, em que o processador de múltiplos canais 204 pode ser configurado para realizar uma decodificação Huffman das identificações de par de canais.
[085] O sinal de múltiplos canais codificado 107 pode compreender adicionalmente um indicador de permissão de processamento de múltiplos canais que indica somente um subgrupo dos canais decodificados, para o qual o processamento de múltiplos canais é permitido e que indica pelo menos um canal decodificado para o qual o processamento de múltiplos canais não é permitido. Sendo assim, o processador de múltiplos canais 204 pode ser configurado para não realizar nenhum processamento de múltiplos canais para o pelo menos um canal decodificado, para o qual o processamento de múltiplos canais não é permitido conforme indicado pelo indicador de permissão de processamento de múltiplos canais.
[086] Por exemplo, quando o sinal de múltiplos canais é um sinal de canal 5.1, o indicador de permissão de processamento de múltiplos canais pode indicar que o processamento de múltiplos canais é somente permitido para os 5 canais, isto é, direito R, esquerdo L, direito surround Rs, esquerdo surround LS e central C, em que o processamento de múltiplos canais não é permitido para o canal de LFE.
[087] Para o processo de decodificação (decodificação de índices de par de canais) o código c a seguir pode ser usado. Sendo assim, para todos os pares de canal, o número de canais com processamento de KLT ativo (nChannels) assim como o número de pares de canal (numPairs) do quadro atual é necessário. maxNumPairIdx = nChannels*(nChannels-1)/2 - 1; numBits = floor(log2(maxNumPairIdx)+1; pairCounter = 0; para (chan1=1; chan1 < nChannels; chan1++) { para (chan0=0; chan0 < chan1; chan0++) { se (pairCounter == pairIdx) { channelPair[0] = chan0; channelPair[1] = chan1; retorno; } caso contrário pairCounter++; } } }
[088] Para decodificar os coeficientes de previsão para ângulos sem largura de banda, o código c a seguir pode ser usado. para(par=0; par<numPairs; par++) { mctBandsPerWindow = numMaskBands[par]/windowsPerFrame; se(delta_code_time[par] > 0) { lastVal = alpha_prev_fullband[par]; } caso contrário { lastVal = DEFAULT_ALPHA; } newAlpha = lastVal + dpcm_alpha[par][0]; se(newAlpha >= 64) { newAlpha -= 64; } para (band=0; band < numMaskBands; band++){ /* define todos os ângulos para ângulo de banda completa */ pairAlpha[par][band] = newAlpha; /* define os ângulos anteriores de acordo com mctMask */ se(mctMask[par][band] > 0) { alpha_prev_frame[par][band%mctBandsPerWindow] = newAlpha; } caso contrário { alpha_prev_frame[par][band%mctBandsPerWindow] = DEFAULT_ALPHA; } } alpha_prev_fullband[par] = newAlpha; para(band=bandsPerWindow; band<MAX_NUM_MC_BANDS; band++) { alpha_prev_frame[par][band] = DEFAULT_ALPHA; } } Para decodificar os coeficientes de previsão para ângulos de KLT sem largura de banda, o código c a seguir pode ser usado. para(par=0; par<numPairs; par++) { mctBandsPerWindow = numMaskBands[par]/windowsPerFrame; para(band=0; band<numMaskBands[par]; band++) { se(delta_code_time[par] > 0) { lastVal = alpha_prev_frame[par][band%mctBandsPerWindow]; } caso contrário { se ((band % mctBandsPerWindow) == 0) { lastVal = DEFAULT_ALPHA; } } se (msMask[par][band] > 0 ) { newAlpha = lastVal + dpcm_alpha[par][band]; se(newAlpha >= 64) { newAlpha -= 64; } pairAlpha[par][band] = newAlpha; alpha_prev_frame[par][band%mctBandsPerWindow] = newAlpha; lastVal = newAlpha; } caso contrário { alpha_prev_frame[par][band%mctBandsPerWindow] = DEFAULT_ALPHA; /* - 45° */ } /* redefinir ângulo de banda completa */ alpha_prev_fullband[par] = DEFAULT_ALPHA; } para(band=bandsPerWindow; band<MAX_NUM_MC_BANDS; band++) { alpha_prev_frame[par][band] = DEFAULT_ALPHA; } }
[089] Para evitar diferenças de ponto de flutuação de funções trigonométricas em diferentes plataformas, as tabelas de consulta a seguir para converter índices de ângulo diretamente para sen/cos devem ser usadas: tabIndexToSinAlpha[64] = { -1.000000f,-0.998795f,-0.995185f,-0.989177f,-0.980785f,-0.970031f,- 0.956940f,-0.941544f, -0.923880f,-0.903989f,-0.881921f,-0.857729f,-0.831470f,-0.803208f,- 0.773010f,-0.740951f, -0.707107f,-0.671559f,-0.634393f,-0.595699f,-0.555570f,-0.514103f,- 0.471397f,-0.427555f, -0.382683f,-0.336890f,-0.290285f,-0.242980f,-0.195090f,-0.146730f,- 0.098017f,-0.049068f, 0.000000f, 0.049068f, 0.098017f, 0.146730f, 0.195090f, 0.242980f, 0.290285f, 0.336890f, 0.382683f, 0.427555f, 0.471397f, 0.514103f, 0.555570f, 0.595699f, 0.634393f, 0.671559f, 0.707107f, 0.740951f, 0.773010f, 0.803208f, 0.831470f, 0.857729f, 0.881921f, 0.903989f, 0.923880f, 0.941544f, 0.956940f, 0.970031f, 0.980785f, 0.989177f, 0.995185f, 0.998795f }; tabIndexToCosAlpha[64] = { 0.000000f, 0.049068f, 0.098017f, 0.146730f, 0.195090f, 0.242980f, 0.290285f, 0.336890f, 0.382683f, 0.427555f, 0.471397f, 0.514103f, 0.555570f, 0.595699f, 0.634393f, 0.671559f, 0.707107f, 0.740951f, 0.773010f, 0.803208f, 0.831470f, 0.857729f, 0.881921f, 0.903989f, 0.923880f, 0.941544f, 0.956940f, 0.970031f, 0.980785f, 0.989177f, 0.995185f, 0.998795f, 1.000000f, 0.998795f, 0.995185f, 0.989177f, 0.980785f, 0.970031f, 0.956940f, 0.941544f, 0.923880f, 0.903989f, 0.881921f, 0.857729f, 0.831470f, 0.803208f, 0.773010f, 0.740951f, 0.707107f, 0.671559f, 0.634393f, 0.595699f, 0.555570f, 0.514103f, 0.471397f, 0.427555f, 0.382683f, 0.336890f, 0.290285f, 0.242980f, 0.195090f, 0.146730f, 0.098017f, 0.049068f };
[090] Para decodificação de codificação de múltiplos canais, o código c a seguir pode ser usado para a abordagem baseada em rotação de KLT. decode_mct_rotation() para (par=0; par < self->numPairs; par++) { mctBandOffset = 0; /* rotação de MCT inversa */ para (ganho = 0, grupo = 0; grupo <num_window_groups; grupo++) { para (groupwin = 0; groupwin < window_group_length[grupo]; groupwin++, win++) { *dmx = spectral_data[ch1][win]; *res = spectral_data[ch2][win]; apply_mct_rotation_wrapper(self,dmx,res,&alphaSfb[mctBandOffset], &mctMask[mctBandOffset],mctBandsPerWindow, alpha, totalSfb,par,nSamples); mctBandOffset += mctBandsPerWindow;
[091] Para processamento de largura de banda o código c a seguir, pode ser usado. apply_mct_rotation_wrapper(self, *dmx, *res, *alphaSfb, *mctMask, mctBandsPerWindow, alpha, totalSfb, par, nSamples) sfb = 0; se (self->MCCSignalingType == 0) { } caso contrário, se (self->MCCSignalingType == 1) { /* apply fullband box */ se (!self->bHasBandwiseAngles[par] && !self->bHasMctMask[par]) { apply_mct_rotation(dmx, res, alphaSfb[0], nSamples); } caso contrário { /* aplicar processamento de largura de banda */ para (i = 0; i< mctBandsPerWindow; i++) { se (mctMask[i] == 1) { startLine = swb_offset [sfb]; stopLine = (sfb+2<totalSfb)? swb_offset [sfb+2] : swb_offset [sfb+1]; nSamples = stopLine-startLine; apply_mct_rotation(&dmx[startLine], &res[startLine], alphaSfb[i], nSamples); } sfb += 2; /* condição de quebra */ se (sfb >= totalSfb) { quebra; } } } } caso contrário, se (self->MCCSignalingType == 2) { } caso contrário, se (self->MCCSignalingType == 3) { apply_mct_rotation(dmx, res, alpha, nSamples); } } Para uma aplicação de rotação de KLT, o código c a seguir pode ser usado. apply_mct_rotation(*dmx, *res, alpha, nSamples) { para (n=0;n<nSamples;n++) { L = dmx[n] * tabIndexToCosAlpha [alphaIdx] - res[n] * tabIndexToSinAlpha [alphaIdx]; R = dmx[n] * tabIndexToSinAlpha [alphaIdx] + res[n] * tabIndexToCosAlpha [alphaIdx]; dmx[n] = L; res[n] = R; } }
[092] A Figura 5 mostra um fluxograma de um método 300 para codificar um sinal de múltiplos canais que tem pelo menos três canais. O método 300 compreende uma etapa 302 de cálculo, em uma primeira etapa de iteração, de valores de correlação entre canais entre cada par dos pelo menos três canais, selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e processar o par selecionado com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais para o par selecionado e para derivar os primeiros canais processados; uma etapa 304 de realizar o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados para derivar os segundos parâmetros de múltiplos canais e segundos canais processados; uma etapa 306 de codificar canais resultantes de um processamento de iteração realizado pelo processador de iteração para obter canais codificados; e uma etapa 308 de geração de um sinal de múltiplos canais codificado que tem os canais codificados e o primeiro e o segundo parâmetros de múltiplos canais.
[093] A Figura 6 mostra um fluxograma de um método 400 para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos o primeiro e o segundo parâmetros de múltiplos canais. O método 400 compreende uma etapa 402 de decodificação dos canais codificados para obter canais decodificados; e uma etapa 404 de realização de um processamento de múltiplos canais com o uso de um segundo par dos canais decodificados identificados pelos segundos parâmetros de múltiplos canais e com o uso dos segundos parâmetros de múltiplos canais para obter canais processados, e realização de um processamento adicional de múltiplos canais com o uso de um primeiro par de canais identificado pelos primeiros parâmetros de múltiplos canais e com o uso dos primeiros parâmetros de múltiplos canais, em que o primeiro par de canais compreende pelo menos um canal processado.
[094] Embora a presente invenção tenha sido descrita no contexto de diagramas de bloco em que os blocos representam componentes de hardware reais ou lógicos, a presente invenção também pode ser implantada por um método implantado por computador. No último caso, os blocos representam etapas de método correspondentes em que essas etapas representam as funcionalidades realizadas pelos blocos de hardware lógicos ou físicos correspondentes.
[095] Embora alguns aspectos tenham sido descritos no contexto de um aparelho, é evidente que esses aspectos também representam uma descrição do método correspondente, em que um bloco ou dispositivo corresponde a uma etapa de método ou um recurso de uma etapa de método. De modo análogo, os aspectos descritos no contexto de uma etapa de método também representam uma descrição de um bloco ou item ou recurso correspondente de um aparelho correspondente. Algumas ou todas as etapas de método podem ser executadas por (ou com o uso de) um aparelho de método, como, por exemplo, um microprocessador, um computador programável ou um circuito eletrônico. Em algumas modalidades, algumas uma ou mais das etapas de método mais importantes podem ser executadas por tal aparelho.
[096] O sinal transmitido ou codificado inventivo pode ser armazenado em um meio de armazenamento digital ou pode ser transmitido em um meio de transmissão tal como um meio de transmissão sem fio ou um meio de transmissão com fio tal como a Internet.
[097] Dependendo de determinadas exigências de implantação, modalidades da invenção podem ser implantadas em hardware ou em software. A implantação pode ser realizada com o uso de um meio de armazenamento digital, por exemplo um disquete, um DVD, um Blu-Ray, um CD, um ROM, um PROM, e EPROM, um EEPROM ou uma memória FLASH, que tem sinais de controle eletronicamente legíveis armazenados nos mesmos, que cooperam (ou têm capacidade de cooperar) com um sistema de computador programável de modo que o respectivo método seja realizado. Portanto, o meio de armazenamento digital pode ser legível por computador.
[098] Algumas modalidades de acordo com a invenção compreendem uma portadora de dados que tem sinais de controle eletronicamente legíveis, que têm capacidade de cooperar com um sistema de computador programável, de modo que um dos métodos descritos no presente documento seja realizado.
[099] Em geral, modalidades da presente invenção podem ser implantadas como um produto de programa de computador com um código de programa, sendo que o código de programa é operativo para realizar um dos métodos quando o produto de programa de computador é executado em um computador. O código de programa pode ser armazenado, por exemplo, em uma portadora legível por máquina.
[100] Outras modalidades compreendem o programa de computador para realizar um dentre os métodos descritos no presente documento armazenados em uma portadora legível por máquina.
[101] Em outras palavras, uma modalidade do método da invenção é, portanto, um programa de computador que tem um código de programa para realizar um dentre os métodos descritos no presente documento, quando o programa de computador é executado em um computador.
[102] Uma modalidade adicional do método inventivo é, portanto, uma portadora de dados (ou um meio de armazenamento não transitório tal como um meio de armazenamento digital, ou um meio legível por computador) que compreende, registrado no mesmo, o programa de computador para realizar um dos métodos descritos no presente documento. A portadora de dados, um meio de armazenamento digital ou um meio gravado são tipicamente tangíveis e/ou não transitórios.
[103] Uma modalidade adicional do método da invenção é, portanto, um fluxo de dados ou uma sequência de sinais que representa o programa de computador para realizar um dentre os métodos descritos no presente documento. O fluxo de dados ou a sequência de sinais podem ser configurados, por exemplo, para serem transferidos por meio de uma conexão de comunicação de dados, por exemplo, por meio da internet.
[104] Uma modalidade adicional compreende um meio de processamento, por exemplo, um computador ou um dispositivo de lógica programável, configurado ou adaptado para realizar um dentre os métodos descritos no presente documento.
[105] Uma modalidade adicional compreende um computador que tem instalados no mesmo o programa de computador para realizar um dentre os métodos descritos no presente documento.
[106] Uma modalidade adicional de acordo com a invenção compreende um aparelho ou um sistema configurado para transferir (por exemplo, de maneira eletrônica ou óptica) um programa de computador para realizar um dentre os métodos descritos no presente documento a um receptor. O receptor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou semelhantes. O aparelho ou sistema pode, por exemplo, compreender um servidor de arquivo para transferir o programa de computador ao receptor.
[107] Em algumas modalidades, um dispositivo de lógica programável (por exemplo, uma matriz de portas programável em campo) pode ser usado para realizar algumas ou todas as funcionalidades dos métodos descritos no presente documento. Em algumas modalidades, uma matriz de portas programável em campo pode cooperar com um microprocessador a fim de realiza um dentre os métodos descritos no presente documento. De modo geral, os métodos são realizados, de preferência, por qualquer aparelho de hardware.
[108] As modalidades descritas acima são apenas ilustrativas para os princípios da presente invenção. Deve-se entender que modificações e variações das disposições e dos detalhes descritos no presente documento serão evidentes a outros elementos versados na técnica. É de intenção, portanto, ser limitada somente pelo escopo das reivindicações de patente a seguir e não pelos detalhes específicos apresentados a título de descrição e explicação das modalidades no presente documento.

Claims (18)

1. Aparelho (100) para codificar um sinal de múltiplos canais (101) que tem pelo menos três canais (CH1:CH3) caracterizado por compreender: um processador de iteração (102) para calcular, em uma primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais (CH1:CH3), para selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e para processar o par selecionado com o uso de uma operação de processamento de múltiplos canais (110,112) para derivar os primeiros parâmetros de múltiplos canais (MCH_PAR1) para o par selecionado e para derivar um primeiro par de canais processados (P1,P2), em que o processador de iteração (102) é configurado para realizar o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados (P1) para derivar os segundos parâmetros de múltiplos canais (MCH_PAR2) e segundos canais processados (P3,P4); um codificador de canal para codificar canais (P2:P4) resultantes de um processamento de iteração realizado pelo processador de iteração (104) para obter os canais codificados (E1:E3); e uma interface de saída (106) para gerar um sinal de múltiplos canais codificado (107) que tem os canais codificados (E1:E3) e o primeiro e o segundo parâmetros de múltiplos canais (MCH_PAR1,MCH_PAR2), em que o processador de iteração (102) está configurado para derivar, para um primeiro quadro, uma pluralidade de indicações de pares selecionados, e em que a interface de saída (106) está configurada para incluir, no sinal de múltiplos canais (107), para um segundo quadro, seguindo o primeiro quadro, um indicador de manutenção indicando que o segundo quadro tem a mesma pluralidade de indicações de pares selecionados que o primeiro quadro.
2. Aparelho (100), de acordo com a reivindicação 1, caracterizado por a interface de saída (106) ser configurada para gerar o sinal de múltiplos canais codificado (107) como um fluxo de bits em série e de modo que os segundos parâmetros de múltiplos canais (MCH_PAR2) estejam no sinal codificado antes dos primeiros parâmetros de múltiplos canais (MCH_PAR1).
3. Aparelho (100), de acordo com qualquer uma das reivindicações 1 ou 2, caracterizado por o processador de iteração (102) ser configurado para realizar processamento de estéreo que compreende pelo menos um dentre um grupo que inclui processamento de rotação com o uso de um cálculo de ângulo de rotação do par selecionado e processamento de previsão.
4. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 3, caracterizado por os primeiros parâmetros de múltiplos canais (MCH_PAR1) compreenderem uma primeira identificação do canal no par selecionado para a primeira etapa de iteração, e em que os segundos parâmetros de múltiplos canais (MCH_PAR2) compreendem uma segunda identificação dos canais em um par selecionado da segunda etapa de iteração.
5. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 4, caracterizado por o processador de iteração (102) ser configurado para calcular uma correlação entre canais com o uso de um quadro de cada canal que compreende uma pluralidade de bandas de modo que um único valor de correlação entre canais para a pluralidade de bandas seja obtido, e em que o processador de iteração (104) é configurado para realizar o processamento de múltiplos canais para cada uma dentre a pluralidade de bandas de modo que o primeiro ou o segundo parâmetros de múltiplos canais (MCH_PAR1,MCH_PAR2) sejam obtidos para cada uma dentre a pluralidade de bandas.
6. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 5, caracterizado por o processador de iteração (102) ser configurado para selecionar somente um par quando a diferença de nível do par é menor do que um limiar, sendo que o limiar é menor do que 40 dB, ou 25 dB, ou 12 dB, ou menor do que 6 dB.
7. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 6, caracterizado por o processador de iteração (102) ser configurado para calcular valores de correlação normalizados, e em que o processador de iteração (102) é configurado para selecionar um par, quando o valor de correlação é maior do que 0,2 e preferencialmente 0,3.
8. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 7, caracterizado por o processador de iteração (102) ser configurado para calcular parâmetros estéreos no processamento de múltiplos canais, e em que o processador de iteração (102) é configurado para realizar somente um processamento de estéreo em bandas, nas quais um parâmetro estéreo é maior do que um limiar quantizado para zero definido por um quantizador de parâmetro estéreo.
9. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 8, caracterizado por o processador de iteração (102) ser configurado para calcular ângulos de rotação no processamento de múltiplos canais, e em que o processador de iteração (102) é configurado para realizar somente processamento de rotação em bandas, nas quais um ângulo de rotação é maior do que um limiar desquantizado para zero lateral de decodificador.
10. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 9, caracterizado por o processador de iteração (102) ser configurado para não selecionar o par selecionado da primeira etapa de iteração na segunda etapa de iteração e, se for aplicável, em quaisquer etapas de iteração adicionais.
11. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 10, caracterizado por o processador de iteração (102) ser configurado para realizar etapas de iteração até que um critério de término de interação seja alcançado, em que o critério de término de interação é que um número máximo de etapas de iteração é igual ou maior do que um número total de canais (CH1:CH3) do sinal de múltiplos canais (101) por dois, ou em que o critério de término de interação é, quando os valores de correlação entre canais não têm um valor maior do que o limiar.
12. Aparelho (100), de acordo com qualquer uma das reivindicações 1 a 11, caracterizado por o processador de iteração (102) ser configurado para processar, na primeira etapa de iteração, o par selecionado com o uso do processamento de múltiplos canais de modo que os canais processados (P1,P2) sejam um canal intermediário (P1) e um canal lateral (P2); e em que o processador de iteração (102) é configurado para realizar o cálculo, a seleção e o processamento na segunda etapa de iteração com o uso somente do canal intermediário (P1) dos canais processados (P1,P2) como o pelo menos um dos canais processados (P1,P2) para derivar os segundos parâmetros de múltiplos canais (MCH_PAR2) e segundos canais processados (P3,P4).
13. Aparelho (100), de acordo com qualquer uma das reivindicações anteriores, caracterizado por o codificador de canal compreender codificadores de canal (120_1:120_3) para codificar os canais (P2:P4) resultantes do processamento de iteração, em que os codificadores de canal são configurados para codificar os canais (P2:P4) de modo que menos bits sejam usados para codificar um canal que tem menos energia do que para codificar um canal que tem mais energia.
14. Aparelho (200) para decodificar um sinal de múltiplos canais codificado (107) que tem canais codificados (E1:E3) e pelo menos primeiro e segundo parâmetros de múltiplos canais (MCH_PAR1,MCH_PAR2) caracterizado por compreender: um decodificador de canal (202) para decodificar os canais codificados (E1:E3) para obter canais decodificados (D1:D3); e um processador de múltiplos canais (204) para realizar um processamento de múltiplos canais com o uso de um segundo par dos canais decodificados (D1:D3) identificados pelos segundos parâmetros de múltiplos canais (MCH_PAR2) e com o uso dos segundos parâmetros de múltiplos canais (MCH_PAR2) para obter canais processados (P1*,P2*), e para realizar um processamento adicional de múltiplos canais com o uso de um primeiro par de canais (D1:D3,P1*,P2*) identificados pelos primeiros parâmetros de múltiplos canais (MCH_PAR1) e com o uso dos primeiros parâmetros de múltiplos canais (MCH_PAR1), em que o primeiro par de canais compreende pelo menos um canal processado (P1*,P2*), em que o sinal de múltiplos canais codificado (107) compreende, para um primeiro quadro, o primeiro e o segundo parâmetros de múltiplos canais (MCH_PAR1, MCH_PAR2) e, para um segundo quadro, seguindo o primeiro quadro, um indicador de manutenção, e em que o processador de múltiplos canais (204) está configurado para realizar o processamento de múltiplos canais e o processamento de múltiplos canais adicional no segundo quadro para o mesmo segundo par e o mesmo primeiro par de canais usados no primeiro quadro.
15. Aparelho (200), de acordo com a reivindicação 14, caracterizado por o sinal de múltiplos canais codificado (107) compreender um indicador de permissão de processamento de múltiplos canais que indica somente um subgrupo dos canais decodificados, para os quais o processamento de múltiplos canais é permitido e indica pelo menos um canal decodificado para o qual o processamento de múltiplos canais não é permitido, e em que o processador de múltiplos canais (204) é configurado para não realizar nenhum processamento de múltiplos canais para o pelo menos um canal decodificado, para o qual o processamento de múltiplos canais não é permitido conforme indicado pelo indicador de permissão de processamento de múltiplos canais.
16. Aparelho (200), de acordo com qualquer uma das reivindicações 14 a 15, caracterizado por o sinal de múltiplos canais codificado (107) ser um sinal em série, em que os segundos parâmetros de múltiplos canais (MCH_PAR2) são recebidos, no decodificador (200), antes dos primeiros parâmetros de múltiplos canais (MCH_PAR1), e em que o processador de múltiplos canais (204) é configurado para processar os canais decodificados (D1:D3) em uma ordem, na qual os parâmetros de múltiplos canais (MCH_PAR1,MCH_PAR2) são recebidos pelo decodificador (200).
17. Método (300) para codificar um sinal de múltiplos canais que tem pelo menos três canais caracterizado por compreender: calcular (302), em uma primeira etapa de iteração, valores de correlação entre canais entre cada par dos pelo menos três canais, selecionar, na primeira etapa de iteração, um par que tem um valor superior ou que tem um valor acima de um limiar, e processar o par selecionado com o uso de uma operação de processamento de múltiplos canais para derivar primeiros parâmetros de múltiplos canais para o par selecionado e para derivar os primeiros canais processados; realizar (304) o cálculo, a seleção e o processamento em uma segunda etapa de iteração com o uso de pelo menos um dos canais processados para derivar segundos parâmetros de múltiplos canais e segundos canais processados; codificar (306) canais resultantes de um processamento de iteração realizado pelo processador de iteração para obter canais codificados; e gerar (308) um sinal de múltiplos canais codificado que tem os canais codificados e o primeiro e o segundo parâmetros de múltiplos canais; derivar, para um primeiro quadro, uma pluralidade de indicações de pares selecionados e incluir, no sinal de múltiplos canais, para um segundo quadro, seguindo o primeiro quadro, um indicador de manutenção, indicando que o segundo quadro tem a mesma pluralidade de indicações de pares selecionados que o primeiro quadro.
18. Método (400) para decodificar um sinal de múltiplos canais codificado que tem canais codificados e pelo menos primeiro e segundo parâmetros de múltiplos canais caracterizado por compreender: decodificar (402) os canais codificados para obter canais decodificados; e realizar (404) um processamento de múltiplos canais com o uso de um segundo par dos canais decodificados identificados pelos segundos parâmetros de múltiplos canais e com o uso dos segundos parâmetros de múltiplos canais para obter canais processados, e realizar um processamento adicional de múltiplos canais com o uso de um primeiro par de canais identificado pelos primeiros parâmetros de múltiplos canais e com o uso dos primeiros parâmetros de múltiplos canais, em que o primeiro par de canais compreende pelo menos um canal processado; em que o sinal de múltiplos canais codificado compreende, para um primeiro quadro, o primeiro e o segundo parâmetros de múltiplos canais e, para um segundo quadro, seguindo o primeiro quadro, um indicador de manutenção, e em que o processamento multicanal e o processamento multicanal adicional no segundo quadro são realizados no mesmo segundo par e no mesmo primeiro par de canais usados no primeiro quadro.
BR122023021774-8A 2015-03-09 2016-03-08 Aparelho e método para codificar e decodificar um sinal de múltiplos canais BR122023021774B1 (pt)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
EP15158234.3 2015-03-09
EP15158234 2015-03-09
EP15172492.9A EP3067885A1 (en) 2015-03-09 2015-06-17 Apparatus and method for encoding or decoding a multi-channel signal
EP15172492.9 2015-06-17
BR112017019187-3A BR112017019187A2 (pt) 2015-03-09 2016-03-08 ?aparelho e método para codificar e decodificar um sinal de múltiplos canais?
PCT/EP2016/054900 WO2016142375A1 (en) 2015-03-09 2016-03-08 Apparatus and method for encoding or decoding a multi-channel signal

Publications (2)

Publication Number Publication Date
BR122023021774A2 BR122023021774A2 (pt) 2023-12-26
BR122023021774B1 true BR122023021774B1 (pt) 2024-07-16

Family

ID=

Similar Documents

Publication Publication Date Title
US20240249732A1 (en) Apparatus and Method for Encoding or Decoding a Multi-Channel Signal
JP7122076B2 (ja) マルチチャネル符号化におけるステレオ充填装置及び方法
JP6346278B2 (ja) ジョイント符号化残留信号を用いたオーディオエンコーダ、オーディオデコーダ、方法、およびコンピュータプログラム
BR122023021774B1 (pt) Aparelho e método para codificar e decodificar um sinal de múltiplos canais
BR122023021817B1 (pt) Aparelho e método para codificar e decodificar um sinal de múltiplos canais