BR122022025233B1 - Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas - Google Patents

Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas Download PDF

Info

Publication number
BR122022025233B1
BR122022025233B1 BR122022025233-8A BR122022025233A BR122022025233B1 BR 122022025233 B1 BR122022025233 B1 BR 122022025233B1 BR 122022025233 A BR122022025233 A BR 122022025233A BR 122022025233 B1 BR122022025233 B1 BR 122022025233B1
Authority
BR
Brazil
Prior art keywords
layer
hoa
layers
representation
sound
Prior art date
Application number
BR122022025233-8A
Other languages
English (en)
Inventor
Sven Kordon
Alexander Krueger
Original Assignee
Dolby International Ab
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 Dolby International Ab filed Critical Dolby International Ab
Publication of BR122022025233B1 publication Critical patent/BR122022025233B1/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/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/301Automatic calibration of stereophonic sound system, e.g. with test microphone
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Stereophonic System (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Trata-se de um método de codificação em camadas de um quadro de uma representação Ambissônica de ordem superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada compreende uma pluralidade de sinais de transporte. O método compreende atribuir a pluralidade de sinais de transporte a uma pluralidade de camadas hierárquicas, sendo que a pluralidade de camadas inclui uma camada base e uma ou mais camadas de aprimoramento hierárquicas, gerar, para cada camada, uma respectiva carga útil de extensão HOA que inclui informações laterais para aprimorar parametricamente uma representação HOA reconstruída obtenível a partir dos sinais de transporte atribuídos à respectiva camada e quaisquer camadas mais baixas que a respectiva camada, atribuir as cargas úteis de extensão HOA geradas às suas respectivas camadas e sinalizar as cargas úteis de extensão HOA geradas em um fluxo de bits de saída. O presente documento se refere adicionalmente a um método de decodificação de um quadro de uma representação HOA compactada de um som ou campo sonoro, um codificador e um decodificador para codificação em camadas de uma representação HOA compactada e uma estrutura de dados que representa um quadro de uma representação HOA compactada de um som ou campo (...).

Description

Pedido dividido do BR112018007171-4, depositado em 07.10.2016. REFERÊNCIA CRUZADA A PEDIDOS RELACIONADOS
[001] Este pedido reivindica prioridade do pedido de patente UE no 15306653.5, depositado em 15 de outubro de 2015, que é incorporado ao presente documento a título de referência em sua totalidade.
CAMPO DA TÉCNICA
[002] O presente documento refere-se a métodos e aparelho para codificação de áudio em camadas. Em particular, o presente documento se refere a métodos e aparelho para codificação de áudio em camadas de quadros de representações sonoras ou (ou campo sonoro) Ambissônica de Ordem Superior (Higher-Order Ambisonics (HOA)) compactadas. O presente documento se refere adicionalmente a estruturas de dados (por exemplo, fluxos de bits) para representar quadros de representações sonoras (ou campo sonoro) HOA compactadas.
ANTECEDENTES
[003] Na definição atual da codificação em camadas HOA, as informações laterais para as ferramentas de decodificação HOA Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico (PAR) são criadas para aprimorar uma representação HOA específica. A saber, na definição atual da codificação HOA em camadas, os dados fornecidos estendem apenas adequadamente a representação HOA da camada mais alta (por exemplo, a camada de aprimoramento mais alta). Para as camadas mais baixas incluindo a camada base, essas ferramentas não aprimoram a representação HOA parcialmente reconstruída adequadamente.
[004] As ferramentas Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico são especificamente projetadas para taxas de dados baixas, em que apenas alguns sinais de transporte estão disponíveis. Entretanto, na codificação em camadas HOA o aprimoramento adequado de representações HOA (parcialmente) reconstruídas não é possível especialmente para camadas de taxa de bits baixa, tal como a camada base. Isso é claramente indesejável a partir do ponto de vista da qualidade de som em taxas de bits baixas.
[005] Adicionalmente, constatou-se o meio convencional de tratar os elementos de vetor V codificados para os sinais baseados em vetor não resulta na decodificação adequada se um CodedVVecLength igual a um for sinalizado na HOADecoderConfig() (isto é, se o modo de codificação de vetor estiver ativo). Nesse modo de codificação de vetor, os elementos de vetor V não são transmitidos para índices de coeficiente HOA que são incluídos no conjunto de ContAddHoaCoeff. Esse conjunto inclui todos os índices de coeficiente HOA AmbCoeffIdx[i] que têm um AmbCoeffTransitionState igual a zero. Convencionalmente, não há necessidade de também adicionar um sinal de vetor V ponderado porque a sequência de coeficiente HOA original para esses índices é explicitamente enviada (sinalizada). Portanto, o elemento de vetor V é definido como zero para esses índices.
[006] Entretanto, no modo de codificação em camadas, o conjunto de índices de coeficiente HOA contínuo depende dos canais de transporte que fazem parte da camada atualmente ativa. Os índices de coeficiente HOA adicionais que são enviados em uma camada mais alta podem estar ausentes nas camadas mais baixas. Então, a suposição de que o sinal de vetor não deve contribuir para a sequência de coeficiente HOA está incorreta para os índices de coeficiente HOA que pertencem às sequências de coeficiente HOA incluídas nas camadas mais altas.
[007] Como consequência, o vetor V na codificação HOA em camadas pode não ser adequado para decodificação de nenhuma camada abaixo da camada mais alta.
[008] Desse modo, não há necessidade de esquemas de codificação e fluxos de bits que sejam adaptados à codificação em camadas de representações HOA compactadas de um som ou campo sonoro.
[009] O presente documento aborda as questões acima. Em particular, os métodos e codificadores/decodificadores para codificação em camadas de quadros de representações de som ou campo sonoro HOA compactadas, assim como estruturas de dados para representar quadros de representações de som ou campo sonoro HOA compactadas são descritos.
SUMÁRIO
[010] De acordo com, é descrito um método de codificação em camadas de um quadro de uma representação Ambissônica de Ordem Superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada se adapta ao padrão de áudio MPEG-H 3D de projeto e quaisquer outros futuros padrões de projeto ou adotados. A representação HOA compactada pode incluir uma pluralidade de sinais de transporte. Os sinais de transporte podem se referir a sinais monaurais, por exemplo, que representam tanto sinais sonoros predominantes como sequências de coeficiente de uma representação HOA. O método pode incluir atribuir a pluralidade de sinais de transporte a uma pluralidade de camadas hierárquicas. Por exemplo, os sinais de transporte podem ser distribuídos para a pluralidade de camadas. A pluralidade de camadas pode incluir a camada base e uma ou mais camadas de aprimoramento hierárquicas. A pluralidade de camadas hierárquicas pode ser ordenada, a partir da camada base, através da primeira camada de aprimoramento, da segunda camada de aprimoramento, e assim por diante , até uma camada de aprimoramento mais alta total (camada mais alta total). O método pode incluir adicionalmente gerar, para cada camada, uma respectiva carga útil de extensão HOA que inclui informações laterais (por exemplo, informações laterais de aprimoramento) para aprimorar parametricamente uma representação HOA reconstruída obtenível a partir dos sinais de transporte atribuídos à respectiva camada e quaisquer camadas mais baixas que a respectiva camada. As representações HOA reconstruídas para as camadas mais baixas podem ser chamadas de representações HOA parcialmente reconstruídas. O método pode incluir adicionalmente atribuir as cargas úteis de extensão HOA geradas às suas respectivas camadas. O método ainda pode incluir adicionalmente sinalizar as cargas úteis de extensão HOA geradas em um fluxo de bits de saída. As cargas úteis de extensão HOA podem ser sinalizadas e uma carga útil HOAEnhFrame(). Desse modo, as informações laterais podem ser movidas do HOAFrame() para o HOAEnhFrame().
[011] Configurado como acima, o proposto aplica codificação em camadas a um (quadro de) representações HOA compactadas a fim de permitir a decodificação de alta qualidade do mesmo, mesmo em taxas de bits baixas. Em particular, o método proposto assegura que cada camada inclua uma carga útil de extensão HOA adequada (por exemplo, informações laterais de aprimoramento) para aprimorar uma representação sonora (parcialmente) reconstruída obtida a partir dos sinais de transporte em quaisquer camadas até a camada atual. Na mesma, as camadas até a camada atual são entendidas como incluindo por exemplo, a camada base, a primeira camada de aprimoramento, a segunda camada de aprimoramento, e assim por diante, até a camada atual. Na mesma, as camadas até a camada atual são entendidas como incluindo, por exemplo, a camada base, a primeira camada de aprimoramento, a segunda camada de aprimoramento, e assim por diante, até a camada atual. Por exemplo, pode-se permitir que o decodificador aprimore uma representação sonora (parcialmente) reconstruída obtida a partir da camada base, referindo-se à carga útil de extensão HOA atribuída à camada base. Na abordagem convencional, apenas a representação HOA reconstruída da camada de aprimoramento mais alta pode ser aprimorada pela carga útil de extensão HOA. Desse modo, independentemente de uma camada utilizável mais alta real (por exemplo, a camada abaixo da camada mais baixa que não foi validamente recebida, de modo que todas as camadas abaixo da camada utilizável mais alta e a própria camada utilizável mais tenham sido validamente recebidas), pode-se permitir que um decodificador aperfeiçoe ou aprimore uma representação sonora reconstruída, mesmo que a representação sonora (parcialmente) reconstruída possa ser diferente da representação sonora completa (por exemplo, total). Em particular, independentemente da camada utilizável mais alta real, é suficiente que o decodificador decodifique a carga útil de extensão HOA para apenas uma única camada (isto é, para a camada utilizável mais alta) para aperfeiçoar ou aprimorar a representação sonora (parcialmente) reconstruída que é obtenível com base em todos os sinais de transporte incluídos nas camadas até a camada utilizável mais alta real. A decodificação das cargas úteis de extensão HOA de camadas mais altas ou mais baixas não é exigida. Por outro lado, o método proposto permite aproveitar a redução da largura de banda exigida que pode ser obtida quando se aplica a codificação em camadas.
[012] Nas modalidades, o método pode incluir adicionalmente transmitir cargas úteis de dados para a pluralidade de camadas com os respectivos níveis de proteção de erro. As cargas úteis de dados podem incluir as respectivas cargas úteis de extensão HOA. A camada base pode ter a proteção de erro mais alta e a uma ou mais camadas de aprimoramento pode ter proteção de erro sucessivamente decrescente. Desse modo, pode-se assegurar que pelo menos um número de camadas inferior seja confiavelmente transmitido, enquanto, por outro lado, reduz a largura de banda exigida total ao não aplicar proteção de erro excessiva a camadas mais altas.
[013] Nas modalidades, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ferramenta de decodificação de predição de sinal espacial HOA. De maneira adicional ou alternativa, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA. De maneira adicional ou alternativa, as cargas úteis de extensão HOA pode incluir elementos de fluxo de bits para uma ferramenta de decodificação de replicação de ambiente paramétrico HOA.
[014] Nas modalidades, as cargas úteis de extensão HOA podem ter um usacExtElementType de ID_EXT_ELE_HOA_ENH_LAYER.
[015] Nas modalidades, o método pode incluir adicionalmente gerar uma carga útil de extensão de configuração HOA que inclui elementos de fluxo de bits para configurar uma ferramenta de decodificação de predição de sinal espacial HOA, uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA e/ou uma ferramenta de decodificação de replicação de ambiente paramétrico HOA. A carga útil de extensão de configuração HOA pode ser incluída na HOADecoderEnhConfig(). O método pode incluir adicionalmente sinalizar a carga útil de extensão de configuração HOA no fluxo de bits de saída.
[016] Nas modalidades, o método pode incluir adicionalmente gerar uma carga útil de configuração de decodificador HOA que inclui informações indicativas da atribuição das cargas úteis de extensão HOA à pluralidade de camadas. O método pode incluir adicionalmente sinalizar a carga útil de configuração de decodificador HOA no fluxo de bits de saída.
[017] Nas modalidades, o método pode incluir adicionalmente determinar se um modo de codificação de vetor está ativo. O método pode incluir adicionalmente, se o modo de codificação de vetor estiver ativo, determinar, para cada camada, um conjunto de índices de coeficiente HOA contínuos com base nos sinais de transporte atribuídos à respectiva camada. Os índices de coeficiente HOA no conjunto de índices de coeficiente HOA contínuos podem ser os índices de coeficiente HOA incluídos no conjunto ContAddHOACoeff. O método pode incluir adicionalmente gerar, para cada sinal de transporte, um vetor V com base no conjunto de índices de coeficiente HOA contínuo determinado para a camada a qual o respectivo sinal de transporte é atribuído, de modo que o vetor V gerado inclua elementos para quaisquer sinais de transporte atribuídos às camadas mais altas que a camada a qual o respectivo sinal de transporte é atribuído. O método pode incluir adicionalmente sinalizar os vetores V gerados no fluxo de bits de saída.
[018] De acordo com outro aspecto, é descrito um método de codificação em camadas de um quadro de uma representação Ambissônica de ordem superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada pode incluir uma pluralidade de sinais de transporte. Os sinais de transporte podem se referir a sinais monaurais, por exemplo, que representam tanto sinais sonoros predominantes como sequências de coeficiente de uma representação HOA. O método pode incluir a atribuição da pluralidade de sinais de transporte a uma pluralidade de camadas hierárquicas. Por exemplo, os sinais de transporte podem ser distribuídos para a pluralidade de camadas. A pluralidade de camadas pode incluir uma camada base e uma ou mais camadas de aprimoramento hierárquicas. O método pode incluir adicionalmente determinar se um modo de codificação de vetor está ativo. O método pode incluir adicionalmente, se o modo de codificação de vetor estiver ativo, determinar, para cada camada, um conjunto de índices de coeficiente HOA contínuo com base nos sinais de transporte atribuídos à respectiva camada. Os índices de coeficiente HOA no conjunto de índices de coeficiente HOA contínuo podem ser os índices de coeficiente HOA incluídos no conjunto ContAddHOACoeff. O método pode incluir adicionalmente gerar, para cada sinal de transporte, um vetor V com base no conjunto de índices de coeficiente HOA contínuo determinado para camada a qual respectivo sinal de transporte é atribuído, de modo que o vetor V gerado inclua elementos para quaisquer sinais de transporte atribuídos a camadas mais altas que a camada a qual o respectivo sinal de transporte é atribuído. O método pode incluir adicionalmente sinalizar os vetores V gerados no fluxo de bits de saída.
[019] Configurado dessa forma, o método proposto assegura que no modo de codificação de vetor um vetor V adequado esteja disponível para cada sinal de transporte que pertence às camadas até a camada utilizável mais alta. Em particular, o método proposto exclui o caso em que os elementos de um vetor V que corresponde aos sinais de transporte nas camadas mais altas não são explicitamente sinalizados. Consequentemente, as informações incluídas nas camadas até a camada utilizável mais alta são suficientes para decodificar quaisquer sinais de transporte que pertencem às camadas até a camada utilizável mais alta. Desse modo, há uma descompactação adequada de respectivas representações HOA reconstruídas para camadas mais baixas (camadas de taxa de bits baixa) mesmo que camadas mais altas não possam ser validamente recebidas pelo decodificador. Por outro lado, o método proposto permite aproveitar totalmente a redução da largura de banda exigida que pode ser obtida quando se aplica a codificação em camadas.
[020] De acordo com outro aspecto, é descrito um método de decodificação de um quadro de uma representação Ambissônica de ordem superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada pode ser codificada em uma pluralidade de camadas hierárquicas. A pluralidade de camadas hierárquicas pode incluir uma camada base e uma ou mais camadas de aprimoramento hierárquicas. O método pode incluir receber um fluxo de bits relacionado ao quadro da representação HOA compactada. O método pode incluir adicionalmente extrair cargas úteis para a pluralidade de camadas. Cada carga útil pode incluir sinais de transporte atribuídos a uma respectiva camada. O método pode incluir adicionalmente determinar uma camada utilizável mais alta entre a pluralidade de camadas para decodificação. O método pode incluir adicionalmente extrair uma carga útil de extensão HOA atribuída à camada utilizável mais alta. Essa carga útil de extensão HOA pode incluir informações laterais para aprimorar parametricamente uma representação HOA (parcialmente) reconstruída que corresponde à camada utilizável mais alta. A representação HOA (parcialmente) reconstruída que corresponde à camada utilizável mais alta pode ser obtenível com base nos sinais de transporte atribuídos à camada utilizável mais alta e quaisquer camadas mais baixas que a camada utilizável mais alta. O método pode incluir adicionalmente gerar a representação HOA (parcialmente) reconstruída que corresponde à camada utilizável mais alta com base nos sinais de transporte atribuídos à camada utilizável mais alta e quaisquer camadas mais baixas que a camada utilizável mais alta. O método ainda pode incluir adicionalmente aprimorar (por exemplo, aprimorar parametricamente) a representação HOA (parcialmente) reconstruída com o uso das informações laterais incluídas na carga útil de extensão HOA atribuída à camada utilizável mais alta. Como resultado, uma representação HOA reconstruída aprimorada pode ser obtida.
[021] Configurado dessa forma, o método proposto assegura que a representação HOA reconstruída final (por exemplo, aprimorada) tenha qualidade otimizada, com o uso das informações disponíveis (por exemplo, recebidas de maneira válida) na medida do possível.
[022] Nas modalidades, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ferramenta de decodificação de predição de sinal espacial HOA. De maneira adicional ou alternativa, as cargas úteis de extensão HOA pode incluir elementos de fluxo de bits para uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA. De maneira adicional ou alternativa, the cargas úteis de extensão HOA pode incluir elementos de fluxo de bits para uma ferramenta de decodificação de replicação de ambiente paramétrico HOA.
[023] Nas modalidades, as cargas úteis de extensão HOA podem ter um a usacExtElementType de ID_EXT_ELE_HOA_ENH_LAYER.
[024] Nas modalidades, o método pode incluir adicionalmente extrair uma carga útil de extensão de configuração HOA analisando-se o fluxo de bits. A carga útil de extensão de configuração HOA pode incluir elementos de fluxo de bits para configurar uma ferramenta de decodificação de predição de sinal espacial HOA, uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA e/ou uma ferramenta de decodificação de replicação de ambiente paramétrico HOA.
[025] Nas modalidades, o método pode incluir adicionalmente extrair cargas úteis de extensão HOA respectivamente atribuídas à pluralidade de camadas. Cada carga útil de extensão HOA pode incluir informações laterais para aprimorar parametricamente uma representação HOA (parcialmente) reconstruída que corresponde a sua respectiva camada atribuída. A representação HOA (parcialmente) reconstruída que corresponde à sua respectiva camada atribuída pode ser obtenível a partir dos sinais de transporte atribuídos àquela camada e quaisquer camadas mais baixas que àquela camada. A atribuição de cargas úteis de extensão HOA às respectivas camadas pode ser conhecida a partir de informações de configuração incluídas no fluxo de bits.
[026] Nas modalidades, determinar a camada utilizável mais alta pode envolver determinar um conjunto de índices de camada inválidos que indicam camadas que não foram recebidas de maneira válida. Pode-se envolver adicionalmente determinar a camada utilizável mais alta como a camada que é uma camada abaixo da camada indicada pelo menor índice (mais baixo) no conjunto de índices de camada inválidos. A camada base pode ter o índice de camada mais baixo (por exemplo, um índice de camada de 1), e as camadas de aprimoramento hierárquicas podem ter índices sucessivamente mais altos. Desse modo, o método proposto assegura que a camada utilizável mais alta seja escolhida de tal modo que todas as informações necessárias para decodificar uma representação HOA (parcialmente) reconstruída a partir das camadas utilizáveis mais altas e quaisquer camadas abaixo da camada utilizável mais alta estejam disponíveis.
[027] Nas modalidades, determinar a camada utilizável mais alta pode envolver determinar um conjunto de índices de camada inválidos que indicam camadas que não foram recebidas de maneira válida. Pode-se envolver adicionalmente determinar a camada utilizável mais alta de um quadro anterior que precede o quadro atual. Pode-se envolver ainda adicionalmente determinar que a camada utilizável mais alta que a mais baixa da camada utilizável mais alta do quadro anterior e a camada que é uma camada abaixo da camada indicada pelo menor índice no conjunto de índices de camada inválidos. Desse modo, uma camada utilizável mais alta para o quadro atual é escolhida de tal modo que todas as informações necessárias para decodificar uma representação HOA (parcialmente) reconstruída a partir da camada utilizável mais alta e quaisquer camadas abaixo da camada utilizável mais alta estejam disponíveis, mesmo se o quadro atual tiver sido codificado diferencialmente em relação ao quadro precedente.
[028] Nas modalidades, o método pode incluir adicionalmente decidir não realizar aprimoramento paramétrico da representação HOA (parcialmente) reconstruída com o uso das informações laterais incluídas na carga útil de extensão HOA atribuída à camada utilizável mais alta se a camada utilizável mais alta do quadro atual for mais baixa que a camada utilizável mais alta do quadro anterior e se o quadro atual tiver sido codificado diferencialmente em relação ao quadro anterior. Desse modo, a representação HOA reconstruída pode ser decodificada em erro nos casos em que o quadro atual (incluindo as informações laterais incluídas na carga útil de extensão HOA atribuída à camada utilizável mais alta) foi codificado diferencialmente em relação ao quadro precedente.
[029] Nas modalidades, o conjunto de índices de camada inválidos pode ser determinado avaliando-se sinalizadores de validade das cargas úteis de extensão HOA correspondentes. Um índice de camada de uma determinada camada pode ser adicionado ao conjunto de índices de camada inválidos se o sinalizador de validade para a carga útil de extensão HOA atribuída à respectiva camada não for definido. Desse modo, o conjunto de índices de camada inválidos pode ser determinado de uma maneira eficiente.
[030] De acordo com outro aspecto, é descrita uma estrutura de dados (por exemplo, fluxo de bits) que representa um quadro de uma representação Ambissônica de ordem superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada pode incluir uma pluralidade de sinais de transporte. A estrutura de dados pode incluir uma pluralidade de cargas úteis de quadro HOA que correspondem às respectivas dentre uma pluralidade de camadas hierárquicas. As cargas úteis de quadro HOA podem incluir respectivos sinais de transporte. A pluralidade de sinais de transporte pode ser atribuída (por exemplo, distribuída) à pluralidade de camadas. A pluralidade de camadas pode incluir uma camada base e uma ou mais camadas de aprimoramento hierárquicas. A estrutura de dados pode incluir adicionalmente, para cada camada, uma respectiva carga útil de extensão HOA que inclui informações laterais para aprimorar parametricamente uma representação HOA (parcialmente) reconstruída obtenível a partir dos sinais de transporte atribuídos à respectiva camada e quaisquer camadas mais baixas que a respectiva camada.
[031] Nas modalidades, as cargas úteis de quadro HOA e as cargas úteis de extensão HOA para a pluralidade de camadas podem ser dotadas dos respectivos níveis de proteção de erro. A camada base pode ter proteção de erro mais alta e a uma ou mais camadas de aprimoramento podem ter proteção de erro sucessivamente decrescente.
[032] Nas modalidades, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ferramenta de decodificação de predição de sinal espacial HOA. De maneira adicional ou alternativa, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA. De maneira adicional ou alternativa, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ferramenta de decodificação de replicação de ambiente paramétrico HOA.
[033] Nas modalidades, as cargas úteis de extensão HOA podem ter um usacExtElementType de ID_EXT_ELE_HOA_ENH_LAYER.
[034] Nas modalidades, a estrutura de dados pode incluir adicionalmente uma carga útil de extensão de configuração HOA que inclui elementos de fluxo de bits para configurar uma ferramenta de decodificação de predição de sinal espacial HOA, uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA e/ou uma ferramenta de decodificação de replicação de ambiente paramétrico HOA.
[035] Nas modalidades, a estrutura de dados pode incluir adicionalmente uma carga útil de configuração de decodificador HOA que inclui informações indicativas da atribuição das cargas úteis de extensão HOA à pluralidade de camadas.
[036] Nas modalidades, métodos e aparelhos se referem à decodificação de uma representação Ambissônica de Ordem Superior (HOA) compactada de um som ou campo sonoro. O aparelho pode ser configurado para ou o método pode incluir receber um fluxo de bits que contém a representação HOA compactada que corresponde a uma pluralidade de camadas hierárquicas que incluem uma camada base e uma ou mais camadas de aprimoramento hierárquicas, em que a pluralidade de camadas tem atribuída à mesma componentes de uma representação sonora compactada básica do som ou campo sonoro, sendo que os componentes são atribuídos às respectivas camadas nos respectivos grupos de componentes, determinar uma camada utilizável mais alta entre a pluralidade de camadas para decodificação; extrair uma carga útil de extensão HOA atribuída à camada utilizável mais alta, em que a carga útil de extensão HOA inclui informações laterais para aprimorar parametricamente uma representação HOA reconstruída que corresponde à camada utilizável mais alta, em que a representação HOA reconstruída que corresponde à camada utilizável mais alta é obtenível com base nos sinais de transporte atribuídos à camada utilizável mais alta e quaisquer camadas mais baixas que a camada utilizável mais alta; decodificar a representação HOA compactada que corresponde à camada utilizável mais alta com base base nas informações de camada, nos sinais de transporte atribuídos à camada utilizável mais alta e quaisquer camadas mais baixas que a camada utilizável mais alta; e aprimorar parametricamente a representação HOA decodificada com o uso das informações laterais incluídas na carga útil de extensão HOA atribuída à camada utilizável mais alta.
[037] A carga útil de extensão HOA pode incluir elementos de fluxo de bits para uma ferramenta de decodificação de predição de sinal espacial HOA. As informações de camada podem indicar um número de sinais direcionais ativos em um quadro atual de uma camada de aprimoramento.
[038] As informações de camada podem indicar um número de coeficientes HOA ambientes adicionais total para uma camada de aprimoramento. As informações de camada podem incluir índices de coeficiente HOA para cada coeficiente HOA ambiente adicional para uma camada de aprimoramento. As informações de camada podem incluir informações de aprimoramento que incluem pelo menos um dentre a Predição de Sinal Espacial, a Síntese de Sinal Direcional de Sub-Banda e o Decodificador de Replicação de Ambiente Paramétrico. A representação HOA compactada é adaptada para um modo de codificação em camadas para conteúdo baseado em HOA se um CodedVVecLength igual a um for sinalizado na HOADecoderConfig(). Ademais, elementos de vetor v podem não ser transmitidos para índices que são iguais aos índices de coeficientes HOA adicionais incluídos em um conjunto de ContAddHoaCoeff. O conjunto de ContAddHoaCoeff pode ser separadamente definido para cada uma dentre a pluralidade de camadas hierárquicas. As informações de camada incluem elementos NumLayers, em que cada elemento indica um número de sinais de transporte incluído em todas as camadas até uma i-ésima camada. As informações de camada podem incluir um indicador de todas as camadas realmente usadas para um fc-ésimo quadro. As informações de camada também podem indicar que todos os coeficientes para os vetores predominantes são especificados. As informações de camada podem indicar que os coeficientes dos vetores predominantes que correspondem ao número maior que um MinNumOfCoeffsForAmbHOA são especificadas. As informações de camada podem indicar que MinNumOfCoeffsForAmbHOA e todos os elementos definidos em ContAddHoaCoeff[lay] não são transmitidos, em que lay é o índice da camada que contém o vetor com base no sinal que corresponde ao vetor.
[039] De acordo com outro aspecto, é descrito um codificador para codificação em camadas de um quadro de uma representação Ambissônica de ordem superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada pode incluir uma pluralidade de sinais de transporte. O codificador pode incluir um processador configurado para realizar algumas ou todas as etapas de método dos métodos de acordo com o primeiro aspecto mencionado acima e o segundo aspecto mencionado acima.
[040] De acordo com outro aspecto, é descrito um decodificador para decodificar um quadro de uma representação Ambissônica de ordem superior, HOA, compactada de um som ou campo sonoro. A representação HOA compactada pode ser codificada em uma pluralidade de camadas hierárquicas que incluem uma camada base e uma ou mais camadas de aprimoramento hierárquicas. O decodificador pode incluir um processador configurado para realizar algumas ou todas as etapas de método dos métodos de acordo com o terceiro aspecto mencionado acima.
[041] De acordo com outro aspecto, um programa de software é descrito. O programa de software pode ser adaptado para execução em um processador e para realizar algumas ou todas as etapas de método descritas no presente documento quando realizadas em um dispositivo de computação.
[042] De acordo com ainda outro aspecto, uma mídia de armazenamento é descrita. A mídia de armazenamento pode incluir um programa de software adaptado para execução em um processador e para realizar algumas ou todas as etapas de método descritas no presente documento quando realizadas em um dispositivo de computação.
[043] Deve-se considerar que declarações feitas em relação a qualquer um dos aspectos acima ou suas modalidades também se aplicam a outros respectivos aspectos ou suas modalidades, como a pessoa versada na técnica irá observar. A repetição dessas declarações para cada e todo aspecto ou modalidade foi omitida por razões de concisão.
[044] Deve-se notar que os métodos e aparelho que incluem suas modalidades preferidas conforme descrito no presente documento podem ser usados de maneira independente ou em combinação com os outros m] revelado neste documento. Além disso, todos os aspectos dos métodos e aparelho descritos no presente documento podem ser arbitrariamente combinados. Em particular, os recursos das reivindicações podem ser combinados entre si de uma maneira arbitrária.
[045] Deve-se notar adicionalmente que as etapas de método e os recursos de aparelho podem ser intercambiados de muitas maneiras. Em particular, os detalhes do método revelado podem ser implementados como um aparelho adaptado para executar algumas ou todas as etapas do método e, vice-versa, como a pessoa versada na técnica irá observar.
DESCRIÇÃO DOS DESENHOS
[046] A invenção é explicada abaixo de uma maneira exemplificativa com referência aos desenhos anexos, em que:
[047] A Figura 1 é um diagrama de blocos que ilustra esquematicamente uma atribuição de cargas úteis para a camada base e M —1 camadas de aprimoramento no lado de codificador;
[048] A Figura 2 é um diagrama de blocos que ilustra esquematicamente um exemplo de um receptor e estágio de descompactação;
[049] A Figura 3 é um fluxograma que ilustra um exemplo de um método de codificação em camadas de um quadro de uma representação HOA compactada, de acordo com modalidades da revelação;
[050] A Figura 4 é um fluxograma que ilustra outro exemplo de um método de codificação em camadas de um quadro de uma representação HOA compactada, de acordo com modalidades da revelação;
[051] A Figura 5 é um fluxograma que ilustra um exemplo de um método de decodificação de um quadro de uma representação HOA compactada, de acordo com modalidades da revelação;
[052] A Figura 6 é um diagrama de blocos que ilustra esquematicamente um exemplo de uma implementação de hardware de um codificador, de acordo com modalidades da revelação; e
[053] A Figura 7 é um diagrama de blocos que ilustra esquematicamente um exemplo de uma implementação de hardware de um decodificador, de acordo com modalidades da revelação.
DESCRIÇÃO DETALHADA
[054] Primeiro, uma representação sonora (ou campo sonoro) compactada a qual métodos e codificadores/decodificadores, de acordo com a presente revelação, podem ser aplicáveis será descrita.
[055] Para a transmissão contínua de uma representação sonora (ou campo sonoro) compactada através de um canal de transmissão com condições variáveis no tempo, a codificação em camadas é um meio para adaptar a qualidade da representação sonora recebida às condições de transmissão, e, em particular, para evitar quedas de sinal indesejadas.
[056] Para codificação em camadas, a representação sonora (ou campo sonoro) compactada é geralmente subdividida em uma camada base de alta prioridade de um tamanho relativamente pequeno e camadas de aprimoramento adicionais com prioridades decrementais e tamanhos arbitrários. Supõe-se que cada camada de aprimoramento contenha tipicamente informações incrementais para complementar aquelas de todas as camadas mais baixas a fim de aprimorar a qualidade da representação sonora (ou campo sonoro) compactada. A ideia é, então, controlar a quantidade de proteção de erro para a transmissão das camadas individuais de acordo com sua prioridade. Em particular, a camada base é dotada de uma proteção de erro alta, que é razoável e acessível devido ao seu baixo tamanho.
[057] Supõe-se a seguir que a representação sonora (ou campo sonoro) compactada completa, em geral, consiste em três seguintes componentes:
[058] 1. Uma representação sonora (ou campo sonoro) compactada básica que consiste em um número de componentes complementares, que representa a porcentagem distintivamente maior da representação sonora (ou campo sonoro) compactada completa.
[059] 2. Informações laterais básicas necessárias para decodificar a representação sonora compactada básica, que se presume que seja de tamanho muito menor em comparação com a representação sonora (ou campo sonoro) compactada básica. Presume-se adicionalmente que consista na sua maior parte dos dois seguintes componentes, ambos os quais especificam a descompactação de apenas um componente particular da representação sonora compactada básica:
[060] a) O primeiro componente contém informações laterais que descrevem componentes complementares individuais da representação sonora (ou campo sonoro) compactada básica independentemente de outros componentes complementares.
[061] b) O segundo (opcional) componente contém informações laterais que descrevem componentes complementares individuais da representação sonora (ou campo sonoro) compactada básica em dependência de outros componentes complementares. Em particular, a dependência tem as seguintes propriedades:
[062] • As informações laterais dependentes para cada componente complementar individual da representação sonora (ou campo sonoro) compactada básica alcançam sua maior extensão no caso em que nenhum outro componente complementar está contido na representação sonora (ou campo sonoro) compactada básica.
[063] • No caso de certos componentes complementares adicionais serem adicionados à representação sonora (ou campo sonoro) compactada básica, as informações laterais dependentes para o componente complementar individual considerado se tornam um subconjunto das originais reduzindo, desse modo, seu tamanho.
[064] 3. Informações laterais de aprimoramento opcionais para aprimorar a representação sonora (ou campo sonoro) compactada básica. Presume-se que seu tamanho também seja muito menor que aquele da representação sonora (ou campo sonoro) compactada básica.
[065] Um exemplo proeminente de tal tipo de representação sonora (ou campo sonoro) compactada completa é dado pela representação de campo sonoro HOA compactada conforme especificado pela versão preliminar do padrão de áudio MPEG-H 3D.
[066] 1. Sua representação de campo sonoro compactada básica pode ser identificada com um número de sinais monaurais quantizados, que representa tanto assim chamados sinais sonoros predominantes como sequências de coeficiente de um assim chamado componente campo sonoro HOA ambiente.
[067] 2. As informações laterais básicas descrevem, entre outros, para cada um desses sinais monaurais, como isso contribui espacialmente para o campo sonoro. Essas informações podem ser adicionalmente separadas nos dois componentes diferentes a seguir:
[068] (a) Informações laterais relacionadas a sinais monaurais individuais específicos, que são independentes da existência de outros sinais monaurais. Tais informações laterais podem, por exemplo, especificar um sinal monaural para representar um sinal direcional (que significa uma onda de plano geral) com uma certa direção de incidência. Alternativamente, um sinal monaural pode ser especificado como uma sequência de coeficiente da representação HOA original que tem um certo índice.
[069] (b) Informações laterais relacionadas a sinais monaurais individuais específicos, que são dependentes da existência de outros sinais monaurais. Tais informações laterais ocorrem, por exemplo, se sinais monaurais forem especificados para serem assim chamados de sinais baseados em vetor, o que significa que eles são direcionalmente distribuídos dentro do campo sonoro, em que a distribuição direcional é especificada por meio do vetor. Em um certo modo (isto é CodedVVecLength = 1), componentes particulares desse vetor são implicitamente definidos em zero e não fazem parte da representação de vetor compactada. Esses componentes são aqueles com índices iguais àqueles da sequência de coeficiente da representação HOA original, que fazem parte da representação de campo sonoro compactada básica. Isso significa que se componentes individuais do vetor são codificados, seu número total depende da representação de campo sonoro compactada básica, em particular, em quais sequências de coeficiente da representação HOA original a mesma contém.
[070] Se nenhuma sequência de coeficiente da representação HOA original estiver contida na representação de campo sonoro compactada básica, as informações laterais básicas dependentes para cada sinal baseado em vetor consistem em todos os componentes de vetor e tem seu maior tamanho. No caso em que as sequências de coeficiente da representação HOA original com certos índices são adicionadas à representação de campo sonoro compactada básica, os componentes de vetor com esses índices são removidos das informações laterais para cada sinal baseado em vetor reduzindo, desse modo, o tamanho das informações laterais básicas dependentes para sinais baseados em vetor.
[071] 3. As informações laterais de aprimoramento consistem nos seguintes componentes:
[072] ■ Parâmetros relacionados à assim chamada (banda larga) predição espacial para predizer (linearmente) porções ausentes do campo sonoro a partir dos sinais direcionais.
[073] ■ Parâmetros relacionados à assim chamada Síntese de Sinais Direcionais de Sub-Banda e à Replicação de Ambiente Paramétrico, que são ferramentas de compactação que permitem que uma predição paramétrica dependente de frequência de sinais monaurais adicionais seja espacialmente distribuída a fim de complementar uma representação HOA compactada até agora espacialmente incompleta ou deficiente. A predição se baseia nas sequências de coeficiente da representação de campo sonoro compactada básica. Um aspecto importante é que a contribuição complementar mencionada para o campo sonoro é representada dentro da representação HOA compactada não por meio de sinais quantizados adicionais, mas, de preferência, por meio de informações laterais extras de um tamanho comparavelmente muito menor. Portanto, as duas ferramentas de codificação mencionadas são especialmente adequadas para compactação de representações HOA em taxas de dados baixas.
[074] um segundo exemplo de uma representação compactada de um sinal monaural com a estrutura mencionada acima pode consistir nos seguintes componentes:
[075] 1. Algumas informações espectrais codificadas para bandas de frequência não contíguas até uma certa frequência superior, que pode ser considerada como uma representação compactada básica.
[076] 2. Algumas informações laterais básicas que especificam as informações espectrais codificadas (por exemplo, pelo número e largura de bandas de frequência codificadas).
[077] 3. Algumas informações laterais de aprimoramento que consistem em parâmetros de uma assim chamada Replicação de Banda Espectral (SBR), que descreve como reconstruir parametricamente a partir da representação compactada básica as informações espectrais para bandas de frequência mais altas que não são consideradas na representação compactada básica.
[078] A seguir, um método para a codificação em camadas de uma representação sonora (ou campo sonoro) compactada completa que tem a estrutura anteriormente mencionada será descrito.
[079] Presume-se que a compactação seja baseada em quadro no sentido de que fornece representações compactadas (por exemplo, na forma de pacotes de dados ou equivalentemente cargas úteis de quadro) para intervalos de tempo sucessivos, por exemplo, intervalos de tempo de tamanho igual. Presume-se que esses pacotes de dados contenham um sinalizador de validade, um valor que indica seu tamanho, assim como seus dados de representação compactados reais. Ao longo da descrição a seguir, a descrição será focalizada principalmente no tratamento de um único quadro e, portanto, o índice de quadro será omitido.
[080] Presume-se cada carga útil de quadro da representação sonora (ou campo sonoro) compactada completa considerada 1100 contenha J pacotes de dados, cada um, para um componente 1110-1, ..., 1110-/ de uma representação sonora (ou campo sonoro) compactada básica, que são indicados por BSRC, j = 1,...,/. Ademais, presume-se que contenha um pacote com informações laterais básicas independentes 1120 indicadas por BSIj que especificam componentes particulares BSRC,- da representação sonora compactada básica independentemente de outros componentes. Opcionalmente, presume-se adicionalmente que contenha um pacote com informações laterais básicas dependentes indicadas por BSID que especificam componentes particulares BSRC,- da representação sonora compactada básica na dependência de outros componentes. As informações contidas dentro dos dois pacotes de dados BSIj e BSID podem ser opcionalmente agrupadas em um único pacote de dados BSI.
[081] Eventualmente, o mesmo inclui uma carga útil de informações laterais de aprimoramento indicada por ESI com uma descrição de como aprimorar o som reconstruído (ou campo sonoro) a partir da representação compactada básica completa.
[082] O esquema descrito para codificação em camadas aborda as etapas necessárias para permitir tanto a parte de compactação que inclui o empacotamento de pacotes de dados para transmissão, assim como o receptor e a parte de descompactação. Cada parte será descrita em detalhes a seguir.
[083] A seguir, a compactação e o empacotamento para transmissão serão descritos. No caso da codificação em camadas (presumindo M camadas no total, isto é, uma camada básica e M-l camadas de aprimoramento) cada componente da representação sonora (ou campo sonoro) compactada completa 1100 é tratado da seguinte forma:
[084] • A representação sonora (ou campo sonoro) compactada básica é subdividida em partes para ser atribuída às camadas individuais. Sem perda de generalidade, o agrupamento pode ser descrito por M + 1 números Jm, m = 0,..., M com j0 = 1 e jM =j + 1 de modo que BSRC,- seja atribuída à m-ésima camada para Jm_1<j<Jm.
[085] • Devido ao seu tamanho pequeno, é razoável atribuir as informações laterais básicas completas à camada base para evitar a fragmentação desnecessária. Embora as informações laterais básicas independentes BSIj sejam deixadas inalteradas para a atribuição, as informações laterais básicas dependentes precisam ser manipuladas especialmente para codificação em camadas, para permitir uma decodificação correta no lado de receptor, por outro lado, e para reduzir o tamanho das informações laterais dependentes para serem transmitidas, por outro lado. Propõe-se decompô-las em M partes 1130-1, ..., 1130-M indicadas por BSID,m, m = 1, ..., M, em que a m-ésima parte contém informações laterais dependentes para cada um dos componentes BSRC,-, Jm_r <j <Jm, da representação sonora compactada básica atribuída à m-ésima camada, se as respectivas informações laterais dependentes existirem. No caso em que as respectivas informações laterais dependentes não existem, BSID,m presume-se que sejam vazias. As informações laterais BSID,m são dependentes de todos os componentes BSRC,-, 1 <j <Jm, contidos em todas as camadas até a m-ésima.
[086] • No caso da codificação em camadas, é importante perceber que as informações do lado do aprimoramento devem ser computadas para cada camada extra, uma vez que pretende-se aprimorar o som (ou campo sonoro) preliminarmente descompactado que, entretanto, é dependente das camadas disponíveis para descompactação. Portanto, a compactação precisa fornecer M pacotes de dados de informações laterais de aprimoramento individuais 1140-1, ..., 1140-M, indicados por ESIm, m = 1,..., M, em que as informações laterais de aprimoramento no m-ésimo pacote de dados ESIm é computado, tal como para aprimorar a representação sonora (ou campo sonoro) obtida a partir de todos os dados contidos na camada base e camadas de aprimoramento com índices mais baixos que m.
[087] Em síntese, no estágio de compactação, um pacote de dados de quadro FRAME, precisa ser fornecido tendo a seguinte composição:
Figure img0001
[088] Entende-se que a ordenação das cargas úteis individuais com o pacote de dados de quadro é arbitrária em geral.
[089] A atribuição já descrita das cargas úteis individuais às camadas de base e aprimoramento é realizada por um assim chamado empacotador de camadas de transporte e é esquematicamente ilustrado na Figura 1.
[090] A seguir, a recepção e a descompactação serão descritas. O estágio de receptor e descompactação é ilustrado na Figura 2.
[091] Primeiro, os pacotes de camada individuais 1200, 1300-1, ., 1300- (M- 1) são multiplexados para fornecer o pacote de quadro recebido
Figure img0002
[092] da representação sonora (ou campo sonoro) compactada completa, que é então passada para o descompactador 2100. Presume-se que se a transmissão de uma camada individual tiver sido livre de erro, o sinalizador de validade pelo menos da carga útil de informações laterais de aprimoramento contida é definido como “verdadeiro”. No caso de um erro devido à transmissão de uma camada individual do sinalizador de validade dentro pelo menos da carga útil de informações laterais de aprimoramento nessa camada é definida como “falso”. Portanto, a validade de pacote de camada pode ser determinada a partir da validade da carga útil de informações laterais de aprimoramento contidas.
[093] No descompactador 2100, o pacote de quadro recebido é primeiro demultiplexado. Para esse propósito, as informações sobre o tamanho de cada carga útil podem ser exploradas para evitar análise desnecessária através dos dados das cargas úteis individuais.
[094] Em uma próxima etapa, o número NB da camada mais alta a ser realmente usada para descompactação da representação sonora básica é selecionado. A camada de aprimoramento mais alta a ser realmente usada para descompactação da representação sonora básica é fornecida por NB - 1. Uma vez que cada camada contém exatamente uma carga útil de informações laterais de aprimoramento, a mesma é conhecida a partir de cada carga útil de informações laterais de aprimoramento se a camada contendo for válida ou não. Portanto, a seleção pode ser realizada com o uso de todas as cargas úteis de informações laterais de aprimoramento ESIm, m = 1, ..., M. Adicionalmente, o índice NE da carga útil de informações laterais de aprimoramento a ser usado para descompactação é determinado, que é sempre tanto igual a NB como igual a zero. Isso significa que o aprimoramento é realizado tanto sempre de acordo a representação sonora básica ou de modo algum. Uma descrição mais detalhada da seleção será fornecida adicionalmente abaixo.
[095] Sucessivamente, as cargas úteis dos componentes de representação sonora compactada básica BSRC1,_,BSRC7 são passados em conjunto com todas as cargas úteis de informações laterais básicas (isto é, BSIj e BSID,m, m = 1,..., M) e o valor NB para uma unidade de processamento de Descompactação de Representação Básica 2200, que reconstrói a representação sonora (ou campo sonoro) com o uso daqueles componentes de representação sonora compactada básica contidos dentro das NB camadas mais baixas (isto é, a camada base e as NB — 1 camadas de aprimoramento). Presume-se que as informações necessárias sobre quais componentes da representação sonora (ou campo sonoro) compactada básica estão contidos nas camadas individuais sejam conhecidas para o descompactador 2100 a partir de um pacote de dados com informações de configuração, que presume-se que seja enviado e recebido antes dos pacotes de dados de quadro. A decodificação real de cada carga útil de informações laterais básicas dependentes individuais BSID,m, m = 1,..., NB pode ser dividida em duas partes da seguinte forma:
[096] 1. Uma decodificação preliminar de cada carga útil BSID,m, m = 1,...,NB, explorando-se sua dependência dos primeiros componentes de Jm - 1 representação sonora compactada básica BSRC1,.,BSRC(7m)_1 contidos nas primeiras m camadas, o que foi presumido no estágio de codificação.
[097] 2. Uma correção sucessiva de cada carga útil BSID,m, m = 1,..., NB, considerando-se que o componente sonoro básico é finalmente reconstruído a partir dos primeiros componentes de JNB - 1 representação sonora compactada básica BSRC1,.,BSRC(7Wβ)_1 contidos nas primeiras NB>m camadas, que são mais componentes do que o presumido para a decodificação preliminar. Portanto, a correção pode ser realizada descartando-se informações obsoletas, o que é possível devido à propriedade inicialmente presumida das informações laterais básicas dependentes que se certos componentes complementares forem adicionados à representação sonora (ou campo sonoro) compactada básica, as informações laterais básicas dependentes para cada componente complementar individual se tornam um subconjunto das originais.
[098] Eventualmente, a representação sonora (ou campo sonoro) básica reconstruída em conjunto com todas as cargas úteis de informações laterais de aprimoramento ESIX,.,ESIM, as cargas úteis de informações laterais básicas BSIj e BSID,m, m= 1, ...,M, e o valor NE é fornecida para uma unidade de processamento de Descompactação de Representação Aprimorada 2300, que computa a representação sonora (ou campo sonoro) aprimorada final com o uso apenas da carga útil de informações laterais de aprimoramento ESIWE e descarta todas as outras cargas úteis de informações laterais de aprimoramento. Se o valor de NE for igual a zero, todas as cargas úteis de informações laterais de aprimoramento são descartadas e a representação sonora (ou campo sonoro) aprimorada final reconstruída é igual à representação sonora (ou campo sonoro) básica reconstruída.
[099] A seguir, a seleção de camada será descrita. No caso em que todos os pacotes de dados de quadro podem ser descompactados independentemente uns dos outros, tanto número NB da camada mais alta a ser realmente usada para descompactação da representação sonora básica como o índice NE da carga útil de informações laterais de aprimoramento a ser usado para descompactação são definidos como o número mais alto de uma L carga útil de informações laterais de aprimoramento válida, que pode ser propriamente determinada avaliando-se os sinalizadores de validade dentro das cargas úteis de informações laterais de aprimoramento. Explorando-se o conhecimento do tamanho de cada carga útil de informações de lado de aprimoramento, uma análise complicada através dos dados reais das cargas úteis para a determinação de sua validade pode ser evitada.
[0100] No caso em que a descompactação diferencial com dependências interquadro é empregada, a decisão do quadro anterior precisa ser adicionalmente considerada. Com a descompactação diferencial, pacotes de dados de quadro independentes são transmitidos em intervalos de tempo regulares a fim de permitir o início da descompactação desses instantes de tempo, em que a determinação dos valores NB eNE se torna independente de quadro e é realizada conforme descrito acima.
[0101] Para explicar a decisão dependente de quadro em detalhes, indicase primeiro um fc-ésimo quadro
[0102] • o número mais alto de uma carga útil de informações laterais de aprimoramento válida por L(fc)
[0103] • o número de camada mais alta e ser selecionado e usado para descompactação da representação sonora básica por NB(k)
[0104] • o número da carga útil de informações laterais de aprimoramento a ser usado para descompactação por NE(fc).
[0105] Com o uso dessa notação, o número de camada mais alta a ser usado para descompactação da representação sonora básica por NB(k) é computado de acordo com
Figure img0003
[0106] Ao escolher NB(k) não ser maior que NB(k- 1) e L(fc) assegura-se que todas as informações necessárias para descompactação diferencial da representação sonora básica estejam disponíveis.
[0107] O número NE(k) da carga útil de informações laterais de aprimoramento a ser usado para descompactação é determinado de acordo com
Figure img0004
[0108] Isso significa, em particular, que desde que o número de camada mais alta NB(k) a ser usado para descompactação da representação sonora básica não altere, o mesmo número de camadas de aprimoramento correspondente seja selecionado. Entretanto, no caso de uma alteração de NB(fc), o aprimoramento é desabilitado definindo-se NE(k) como zero. Devido à descompactação diferencial presumida das informações laterais de aprimoramento, sua alteração de acordo com NB(k) não é possível uma vez que a mesma pode requer a descompactação da camada de informações laterais de aprimoramento correspondente no quadro anterior que se presume que não tenha sido realizada.
[0109] Alternativamente, se uma descompactação de todas as cargas úteis de informações laterais de aprimoramento com números de até NE(k) forem descompactadas em paralelo, a regra de seleção (4) pode ser substituída por
Figure img0005
[0110] Finalmente, deve-se notar que para descompactação diferencial, o número da camada mais alta usada pode apenas aumentar em pacotes de dados de quadro independentes, enquanto uma diminuição é possível em cada quadro.
[0111] A seguir, modalidades da revelação relacionadas à codificação em camadas de um quadro de uma representação sonora compactada e a uma estrutura de dados (por exemplo, fluxo de bits) que representa um quadro da representação sonora compactada codificada serão descritas para o caso de uma representação HOA compactada. Em particular, alterações propostas para o esquema de codificação em camadas de uma representação HOA compactada serão descritas.
[0112] Como uma correção do Modo de Codificação em Camadas para conteúdo baseado em HOA, um novo usacExtElementType é definido para adaptar melhor as cargas úteis de configuração e quadro das ferramentas de decodificação HOA Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico (PAR) para a camada de aprimoramento HOA correspondente. Se o Modo de Codificação em Camadas para conteúdo baseado em HOA for ativado, que é sinalizado por SingleLayer==0, propõe-se mover os elementos de fluxo de bits correspondentes dessas ferramentas para uma carga útil de extensão HOA adicional do novo tipo para cada camada (incluindo a camada base e uma ou mais camadas de aprimoramento).
[0113] A extensão precisa ser feita porque as informações laterais para essas ferramentas são criadas para aprimorar uma representação HOA específica. Na definição atual da codificação HOA em camadas, os dados fornecidos estendem apenas adequadamente a representação HOA da camada mais alta. Para as camadas mais baixas, essas ferramentas não aprimoram a representação HOA parcialmente reconstruída adequadamente.
[0114] Portanto, pode ser melhor fornecer as informações laterais dessas ferramentas para cada camada para adaptar as mesmas à representação HOA reconstruída da camada correspondente.
[0115] Adicionalmente, as ferramentas Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico são especificamente projetadas para taxas de dados baixas, em que apenas alguns sinais de transporte estão disponíveis. A extensão proposta pode, portanto, oferecer a capacidade para adaptar de maneira ideal as informações laterais dessas ferramentas ao número de sinais de transporte na camada. Consequentemente, a qualidade sonora da representação HOA reconstruída para camadas de taxa de bits baixa, por exemplo, a camada base, pode ser significativamente aumentada em comparação com a abordagem em camadas existente.
[0116] Além disso, a sintaxe de fluxo de bits para os elementos de vetor V codificados para os sinais baseados em vetor precisa ser adaptada para a codificação em camadas HOA se um CodedVVecLength igual a um for sinalizado na HOADecoderConfig(). Nesse modo de codificação de vetor, os elementos de vetor V não são transmitidos para os índices de coeficiente HOA que são incluídos no conjunto de ContAddHoaCoeff. Esse conjunto inclui todos os índices de coeficiente HOA AmbCoeffIdx[i] que têm um AmbCoeffTransitionState igual a zero. Não há necessidade de também adicionar um sinal de vetor V ponderado porque a sequência de coeficiente HOA original para esses índices é explicitamente enviada. Portanto, o elemento de vetor V na abordagem convencional é definida como zero para esses índices.
[0117] Entretanto, no modo de codificação em camadas, o conjunto de índices de coeficiente HOA contínuos depende dos canais de transporte que fazem parte da camada atualmente ativa. Isso significa que índices de coeficiente HOA adicionais enviados em uma camada mais alta estão ausentes nas camadas mais baixas. Então, a suposição que o sinal de vetor não deve contribuir para a sequência de coeficiente HOA está incorreta para os índices de coeficiente HOA que pertencem às sequências de coeficiente HOA incluídas em camadas mais altas. Desse modo, propõe-se (explicitamente) sinalizar os elementos de vetor V para esses índices de coeficiente ausentes.
[0118] Como consequência, propõe-se definir o conjunto de ContAddHoaCoeff para cada camada e usar o conjunto da camada em que o sinal de vetor V é adicionado (o sinal de transporte do sinal de vetor V pertence a) para a seleção dos elementos de vetor V ativos. Todavia, propõe-se que os dados de vetor V permaneçam no HOAFrame() e não sejam movidos para o HOAEnhFrame().
[0119] A seguir, a integração na sintaxe de fluxo de bits MPEG-H será descrita. Um método de codificação correspondente (por exemplo, um método de codificação em camadas de um quadro de uma representação HOA compactada de um som ou campo sonoro) de acordo com modalidades da revelação será descrito com referência à Figura 3. As alterações propostas para o fluxo de bits MPEG-H 3D serão descritas abaixo no ANEXO.
[0120] No modo de Codificação em Camadas o sinalizador SingleLayer na HOADecoderConfig() está inativo (SingleLayer==0) e o número de camadas e seu número correspondente de sinais de transporte HOA atribuído são definidos. Em geral, a representação HOA compactada pode compreender uma pluralidade de sinais de transporte.
[0121] Consequentemente, em S3010 na Figura 3, a pluralidade de sinais de transporte é atribuída a uma pluralidade de camadas hierárquicas. Em outras palavras, os sinais de transporte são distribuídos para a pluralidade de camadas. Cada camada pode incluir os respectivos sinais de transporte atribuídos àquela camada. Cada camada pode ter mais de um sinal de transporte atribuído a mesma. A pluralidade de camadas pode incluir uma camada base e uma ou mais camadas de aprimoramento hierárquicas. As camadas podem ser ordenadas, a partir da camada base, através das camadas de aprimoramento, até a camada de aprimoramento mais alta total (camada mais alta total).
[0122] Propõe-se adicionar uma carga útil de extensão de configuração HOA adicional e carga útil de extensão de quadro HOA com um usacExtElementType ID_EXT_ELE_HOA_ENH_LAYER recentemente definido no fluxo de bits MPEG-H para transmitir uma carga útil de Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e dados de Decodificador PAR para cada camada de aprimoramento HOA (incluindo a camada base). Essas cargas úteis extra irão seguir diretamente a carga útil do tipo ID_EXT_ELE_HOA na mpegh3daExtElementConfig() e correspondentemente no mpegh3daFrame().
[0123] Portanto, propõe-se mover, no caso de SingleLayer==0, os elementos de configuração para a Predição de Sinal Espacial, a Síntese de Sinal Direcional de Sub-Banda e o Decodificador PAR a partir da HOADecoderConfig() pra uma HOADecoderEnhConfig() recentemente definida e a HOAPredictionInfo(), a HOADirectionalPredictionInfo() e a HOAParInfo() correspondentes do HOAFrame() para o HOAEnhFrame() recentemente definido.
[0124] Consequentemente, em S3020, uma respectiva carga útil de extensão HOA é gerada para cada camada. A carga útil de extensão HOA gerada pode incluir informações laterais para aprimorar parametricamente uma representação HOA reconstruída obtenível a partir dos sinais de transporte atribuídos (por exemplo, incluídos em) à respectiva camada e quaisquer camadas mais baixas que a respectiva camada. Conforme indicado acima, as cargas úteis de extensão HOA podem incluir elementos de fluxo de bits para uma ou mais de uma ferramenta de decodificação de predição de sinal espacial HOA, uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA e uma ferramenta de decodificação de replicação de ambiente paramétrico HOA. Ademais, as cargas úteis de extensão HOA podem ter um usacExtElementType de ID_EXT_ELE_HOA_ENH_LAYER.
[0125] Em S3030, as cargas úteis de extensão HOA geradas são atribuídas às suas respectivas camadas.
[0126] Ademais (não mostrado na Figura 3), uma carga útil de extensão de configuração HOA que inclui elementos de fluxo de bits para configurar uma ferramenta de decodificação de predição de sinal espacial HOA, uma ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA e/ou uma ferramenta de decodificação de replicação de ambiente paramétrico HOA podem ser geradas.
[0127] Ademais (não mostrado na Figura 3), uma carga útil de configuração de decodificador HOA que inclui informações indicativas da atribuição das cargas úteis de extensão HOA à pluralidade de camadas pode ser gerada.
[0128] A seguir, a transmissão do fluxo de bits de em camadas (por exemplo, fluxo de bits MPEG-H) será descrito. À medida que todas as cargas úteis de extensão do fluxo de bits MPEG-H são alinhadas por byte e seus tamanhos são explicitamente sinalizados, um sinalizador elementLengthPresent igual a um é presumido, um desempacotador pode analisar o fluxo de bits MPEG-H e extrair as cargas úteis para camadas mais altas que um e transmitir as mesmas separadamente através de canais de transmissão diferentes. A camada base compreende (por exemplo, consiste em) o fluxo de bits MPEG-H que exclui os dados para camadas mais altas. As cargas úteis de extensão ausentes são sinalizadas como vazias ou inativas. Para cargas úteis do tipo ID_USAC_SCE, ID_USAC_CPE e ID_USAC_LFE uma carga útil vazia é sinalizada por um elementLength de zero, em que o elementLengthPresent precisa ser definido como um. A carga útil vazia do tipo ID_USAC_EXT pode ser sinalizada definindo-se o sinalizador usacExtElementPresent em zero (falso).
[0129] Consequentemente, em S3040, as cargas úteis de extensão HOA geradas são sinalizadas (por exemplo, transmitidas ou emitidas) em um fluxo de bits de saída. Em geral, a pluralidade de camadas e as cargas úteis atribuídas à mesma são sinalizadas (por exemplo, transmitidas ou emitidas) no fluxo de bits de saída. Ademais, a carga útil de configuração de decodificador HOA e/ou a carga útil de extensão de configuração HOA pode ser sinalizada (por exemplo, transmitida ou emitida) no fluxo de bits de saída.
[0130] Presume-se que a camada base HOA (índice de camada igual a um) seja transmitida com a proteção de erro mais alta e tenha uma taxa de bits relativamente pequena. A proteção de erro para as seguintes camadas (uma ou mais camadas de aprimoramento HOA) é reduzida de forma constante de acordo com a taxa de bits crescente das camadas de aprimoramento. Devido às condições de transmissão insatisfatórias e proteção de erro inferior, a transmissão de camadas mais altas pode falhar e no pior caso, apenas a camada base é corretamente transmitida. Presume-se que uma proteção de erro combinada para todas as cargas úteis de uma camada seja aplicada. Desse modo, se a transmissão de uma camada falhar, todas as cargas úteis da camada correspondente estão ausentes.
[0131] Em outras palavras, as cargas úteis de dados para a pluralidade de camadas podem ser transmitidas com os respectivos níveis de proteção de erro, em que a camada base tem proteção de erro mais alta e a uma ou mais camadas de aprimoramento têm proteção de erro sucessivamente decrescente.
[0132] Exceto se as etapas exigirem determinadas outras etapas como pré- requisitos, as etapas anteriormente mencionadas podem ser realizadas em qualquer ordem e a ordem exemplificativa ilustrada na Figura 3 é entendida como não limitadora.
[0133] Conforme indicado acima, a sintaxe de fluxo de bits para os elementos de vetor V codificados para os sinais baseados em vetor v precisam ser adaptados para a codificação em camadas HOA se um CodedVVecLength igual a um for sinalizado na HOADecoderConfig(). Um método de codificação correspondente (por exemplo, um método de codificação em camadas de um quadro de uma representação HOA compactada de um som ou campo sonoro) de acordo com modalidades da revelação será descrito com referência à Figura 4.
[0134] Em S4010 na Figura 4, a pluralidade de sinais de transporte é atribuída a uma pluralidade de camadas hierárquicas. Essa etapa pode ser realizada da mesma maneira que S3010 descrita acima.
[0135] Em S4020, se determina se um modo de codificação de vetor está ativo. Isso pode envolver determinar se CodedVVecLength==1 ou não.
[0136] Conforme indicado acima, na abordagem convencional no modo de codificação de vetor, os elementos de vetor V não são transmitidos para índices de coeficiente HOA que são incluídos no conjunto de ContAddHoaCoeff. Esse conjunto inclui todos os índices de coeficiente HOA AmbCoeffIdx[i] que têm um AmbCoeffTransitionState igual a zero. Não há necessidade de adicionar também um sinal de vetor V ponderado porque a sequência de coeficiente HOA original para esses índices é explicitamente enviada. Portanto, o elemento de vetor V na abordagem convencional é definido como zero para esses índices.
[0137] Entretanto, no modo de codificação em camadas, o conjunto de índices de coeficiente HOA contínuo depende dos canais de transporte que fazem parte da camada atualmente ativa. Isso significa que índices de coeficiente HOA adicionais enviados em uma camada mais alta estão ausentes nas camadas mais baixas. Então, suposição de que o sinal de vetor não deve contribuir para a sequência de coeficiente HOA está incorreto para os índices de coeficiente HOA que pertencem às sequências de coeficiente HOA incluídas em camadas mais altas.
[0138] Desse modo, se o modo de codificação de vetor estiver ativo, em S4030 um conjunto de índices de coeficiente HOA contínuos (por exemplo, ContAddHoaCoeff) é determinado (por exemplo, definido) para cada camada com base nos sinais de transporte atribuídos à respectiva camada.
[0139] Se o modo de codificação de vetor estiver ativo, em S4040, para cada sinal de transporte, um vetor V é gerado com base no conjunto de índices de coeficiente HOA determinado para a camada à qual o respectivo sinal de transporte é atribuído. Cada vetor V gerado pode incluir elementos para quaisquer sinais de transporte atribuídos às camadas mais altas que a camada à qual o respectivo sinal de transporte é atribuído. Essa etapa pode envolver o uso do conjunto de índices de coeficiente HOA contínuos que foram determinados para a camada em que o sinal de vetor V é adicionado (a camada que o sinal de transporte do sinal de vetor V pertence) para a seleção dos elementos de vetor V ativos. Todavia, propõe-se que os dados de vetor V permaneçam no HOAFrame() e não se movam para o HOAEnhFrame().
[0140] Então, em S4050 os vetores V gerados (sinais de vetor V) são sinalizados no fluxo de bits de saída. Isso pode envolver (explicitamente) sinalizar os elementos de vetor V para os índices de coeficiente ausentes anteriormente mencionados.
[0141] As etapas S4020 a S4050 na Figura 4 também podem ser empregadas no contexto do método de codificação ilustrado na Figura 3, por exemplo, após S3010. Nesse caso, S3040 e S4050 podem ser combinados em uma única etapa de sinalização.
[0142] Exceto se as etapas exigirem certas outras etapas como pré- requisitos, as etapas anteriormente mencionadas podem ser realizadas em qualquer ordem e a ordem exemplificativa ilustrada na Figura 4 é entendida como não limitadora.
[0143] No lado de receptor, um empacotador de fluxo de bits MPEG-H pode reinserir as cargas úteis corretamente recebidas no fluxo de bits MPEG-H de camada base e passar o mesmo para um decodificador de áudio MPEG-H 3D.
[0144] A seguir, a Inicialização de Decodificação HOA (configuração) será descrita. As cargas úteis de configuração HOA do tipo ID_EXT_ELE_HOA e ID_EXT_ELE_HOA_ENH_LAYER com seus tamanhos correspondentes são inseridas no Decodificador HOA para sua inicialização. As ferramentas de codificação HOA são configuradas de acordo com os elementos de fluxo de bits definidos na HOAConfig(), que é analisada a partir da carga útil do tipo ID_EXT_ELE_HOA. Ademais, essa carga útil contém o uso do Modo de Codificação em Camadas, o número de camadas e o número correspondente de sinais de transporte por camada. Então, se a codificação em camadas for ativada (SingleLayer==0), as HOAEnhConfig()s são analisadas partir das cargas úteis do tipo ID_EXT_ELE_HOA_ENH_LAYER para configurar a Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico correspondentes de cada camada.
[0145] O elemento LayerIdx a partir da HOAEnhConfig() em conjunto com a ordem das camadas de aprimoramento cargas úteis de configuração de camada de na mpegh3daExtElementConfig() indica a ordem das camadas de aprimoramento HOA. A ordem do quadro de camada de aprimoramento HOA úteis do tipo ID_EXT_ELE_HOA_ENH_LAYER no mpegh3daFrame() é idêntica à ordem das cargas úteis de configuração na mpegh3daExtElementConfig() para atribuir claramente as cargas úteis quadro às camadas correspondentes.
[0146] No caso de SingleLayer==1 (codificação de camada única) as cargas úteis do tipo ID_EXT_ELE_HOA_ENH_LAYER são ignoradas e a Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico usam dados correspondentes da HOADecoderConfig() para sua configuração.
[0147] A seguir, a decodificação de quadro HOA no modo em camadas será descrita. Um método de decodificação correspondente (por exemplo, um método de decodificação de um quadro de uma representação HOA compactada de um som ou campo sonoro) de acordo com modalidades da revelação será descrito com referência à Figura 5. Entende-se que a representação HOA compactada (por exemplo, a saída dos métodos da Figura 3 ou Figura 4 descrita acima) foi codificada em uma pluralidade de camadas hierárquicas que inclui uma camada base e uma ou mais camadas de aprimoramento.
[0148] Em S5010 na Figura 5, um fluxo de bits relacionado ao quadro da representação HOA compactada é recebido.
[0149] O decodificador de núcleo de áudio 3D decodifica os sinais de transporte HOA corretamente transmitidos e cria sinais de transporte com todas as amostras iguais a zero paras as cargas úteis inválidas correspondentes. Os sinais de transporte decodificados em conjunto com os sinalizadores usacExtElementPresent, os dados e tamanhos das cargas úteis HOA do tipo ID_EXT_ELE_HOA e ID_EXT_ELE_HOA_ENH_LAYER são inseridos no Decodificador HOA. As cargas úteis de extensão do tipo ID_USAC_EXT com um sinalizador usacExtElementPresent definido como falso tem que ser sinalizado como cargas úteis ausentes para que o decodificador HOA garanta a atribuição das cargas úteis às camadas correspondentes.
[0150] Em S5020, as cargas úteis para a pluralidade de camadas são extraídas. Cada carga útil pode incluir sinais de transporte atribuídos a uma respectiva camada.
[0151] Nessa etapa, o Decodificador HOA pode analisar o HOAFrame() a partir da carga útil do tipo ID_EXT_ELE_HOA.
[0152] Subsequentemente, as cargas úteis válidas do tipo ID_EXT_ELE_HOA_ENH_LAYER e as cargas úteis inválidas do tipo ID_EXT_ELE_HOA_ENH_LAYER são determinadas avaliando-se o sinalizador correspondente usacExtElementPresent das cargas úteis, em que uma carga útil inválida é indicada por um sinalizador usacExtElementPresent igual a falso e a atribuição das cargas úteis de aprimoramento HOA aos índices de camada de aprimoramento é conhecida a partir da configuração de Decodificador HOA.
[0153] Em S5030, uma camada utilizável mais alta entre a pluralidade de camadas para decodificação é determinada.
[0154] À medida que as camadas são dependentes umas das outras em termos dos sinais de transporte, o decodificador HOA pode decodificar apenas uma camada quando todas as camadas com um índice mais baixo forem corretamente recebidas. A camada utilizável mais alta pode ser selecionada nessa etapa de modo que todas as camadas até a camada utilizável mais alta tenham sido recebidas. Os detalhes dessa etapa serão descritos abaixo.
[0155] Em S5040, uma carga útil de extensão HOA atribuída à camada utilizável mais alta é extraída. Conforme indicado acima, a carga útil de extensão HOA pode incluir informações laterais para aprimorar parametricamente uma representação HOA reconstruída que corresponde à camada utilizável mais alta. Na mesma, a representação HOA reconstruída que corresponde à camada utilizável mais alta pode ser obtenível com base nos sinais de transporte atribuídos à camada utilizável mais alta e quaisquer camadas mais baixas que a camada utilizável mais alta.
[0156] Adicionalmente, as cargas úteis de extensão HOA respectivamente atribuídas àquelas restantes dentre a pluralidade de camadas podem ser extraídas. Cada carga útil de extensão HOA pode incluir informações laterais para aprimorar parametricamente uma representação HOA reconstruída que corresponde à sua respectiva camada atribuída. A representação HOA reconstruída que corresponde à sua respectiva camada atribuída pode ser obtenível a partir dos sinais de transporte atribuídos àquela camada e quaisquer camadas mais baixas que àquela camada.
[0157] Ademais (não mostrado na Figura 5), o método de decodificação pode compreender uma etapa de extrair uma carga útil de extensão de configuração HOA. Isso pode ser feito analisando-se o fluxo de bits. A carga útil de extensão de configuração HOA pode incluir elementos de fluxo de bits para configurar a ferramenta de decodificação de predição de sinal espacial HOA, a ferramenta de decodificação de síntese de sinal direcional de sub-banda HOA e/ou a ferramenta de decodificação de replicação de ambiente paramétrico HOA.
[0158] Em S5050, a representação HOA (parcialmente) reconstruída que corresponde à camada utilizável mais alta é gerada com base nos sinais de transporte atribuídos à camada utilizável mais alta e quaisquer camadas mais baixas que a camada utilizável mais alta.
[0159] O número de sinais de transporte realmente usados /ADD,LAY (^) é definido de acordo com (o índiceMLAY(fc) de) a camada utilizável mais alta e uma primeira representação HOA preliminar é decodificada a partir do HOAFrame() e a partir dos sinais de transporte correspondentes da camada e quaisquer camadas mais baixas.
[0160] Então, em S5060 a representação HOA reconstruída é aprimorada (por exemplo, parametricamente aprimorada) com o uso das informações laterais incluídas na carga útil de extensão HOA atribuída à camada utilizável mais alta.
[0161] Ou seja, a representação HOA obtida em S5050 é, então, aprimorada pela Predição de Sinal Espacial, pela Síntese de Sinal Direcional de Sub-Banda e pelo Decodificador de Replicação de Ambiente Paramétrico com o uso dos dados HOAEnhFrame() analisados a partir da carga útil de extensão de camada de aprimoramento HOA do tipo ID_EXT_ELE_HOA_ENH_LAYER da camada atualmente ativaMLAY(fc), isto é, a camada utilizável mais alta.
[0162] As informações usadas nas etapas S5020-S5060 podem ser conhecidas como informações de camada.
[0163] Exceto se as etapas exigirem certas outras etapas como pré- requisitos, as etapas anteriormente mencionadas podem ser realizadas em qualquer ordem e a ordem exemplificativa ilustrada na Figura 5 é entendida como não limitadora.
[0164] A seguir, os detalhes da determinação (por exemplo, seleção) da camada utilizável mais alta em S5030 serão descritos.
[0165] Conforme indicado acima, o decodificador HOA pode decodificar apenas uma camada quando todas as camadas com um índice mais baixo são corretamente recebidas, à medida que as camadas são dependentes umas das outras em termos de sinais de transporte.
[0166] Para a seleção da camada decodificável mais alta, o Decodificador pode criar um conjunto de índices de camada inválidos, em que o menor índice desse conjunto menos um resulta no índice MLAY da camada de aprimoramento decodificável mais alta. O conjunto de índices de camada inválidos pode ser determinado avaliando-se sinalizadores de validade das cargas úteis de extensão HOA correspondentes.
[0167] Em outras palavras, determinar a camada utilizável mais alta pode envolver determinar um conjunto de índices de camada inválidos que indica as camadas que não foram recebidas de maneira válida. Pode-se envolver adicionalmente determinar a camada utilizável mais alta como a camada que é uma camada abaixo da camada indicada pelo menor índice no conjunto de índices de camada inválidos. Desse modo, assegura-se que todas as camadas abaixo da camada utilizável mais foram recebidas de maneira válida.
[0168] No caso de codificação de quadros diferencial, o índice da camada utilizável mais alta do quadro anterior (por exemplo, imediatamente precedente) terá que ser levado em consideração. Primeiro, uma situação será descrita em que o índice da camada utilizável mais alta do quadro anterior (por exemplo, precedente) é mantido.
[0169] Se o índice da camada utilizável mais alta (por exemplo, camada decodificável mais alta) para o quadro atual for igual ao índice de camada do quadro anterior MLAY(fc- 1), o índice de camada do quadro atual MLAY(fc) é definido como ^LAY(^_ 1).
[0170] Então, o número de sinais de transporte /ADD,LAY (^) realmente usado é definido de acordo MLAY(fc) e uma primeira representação HOA preliminar é decodificada a partir do HOAFrame() e dos sinais de transporte correspondentes da camada e quaisquer camadas mais baixas, conforme indicado acima. Essa representação HOA é, então, aprimorada pela Predição de Sinal Espacial, pela Síntese de Sinal Direcional de Sub-Banda e pelo Decodificador de Replicação de Ambiente Paramétrico com o uso dos dados HOAEnhFrame() analisados a partir da carga útil de extensão de camada de aprimoramento HOA do tipo ID_EXT_ELE_HOA_ENH_LAYER da camada atualmente ativa MLAY(/<), conforme indicado acima.
[0171] A seguir, será descrita uma situação em que se comuta para um índice inferior da camada utilizável mais alta do quadro anterior (por exemplo, precedente). Ou seja, no caso em que o índice da camada decodificável mais alta para o quadro atual for menor que o índice da camada do quadro anterior MLAY(fc- 1), o decodificador HOA define MLAY(/<) o índice da camada decodificável mais alto para o quadro atual. A decodificação das cargas úteis para a Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico para a nova camada pode iniciar apenas no próximo Quadro HOA com um hoaIndependencyFlag igual a um. Até tal HOAFrame() ter sido recebido, a representação HOA da camada de índice MLAY(/<) é reconstruída sem realiza a Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico. Isso significa que o número de sinais de transporte realmente usado /ADD,LAY W é definido de acordo MLAY(/<) e apenas a primeira representação HOA preliminar é decodificada a partir do HOAFrame() e a partir dos sinais de transporte correspondentes da camada e quaisquer camadas mais baixas. Então, se um HOAFrame() com um hoaIndependencyFlag igual a um foi recebido, as cargas úteis para a Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico são analisadas e decodificadas para aprimorar a representação HOA preliminar, de modo que a qualidade total da camada atualmente ativa seja fornecida para esse quadro.
[0172] Desse modo, o método proposto pode compreender (não mostrado na Figura 5) decidir não realizar aprimoramento paramétrico da representação HOA reconstruída com o uso das informações laterais incluídas na carga útil de extensão HOA atribuída à camada utilizável mais alta se a camada utilizável mais alta do quadro atual for menor que a camada utilizável mais alta do quadro anterior (se o quadro atual tiver sido codificado diferencialmente em relação ao quadro anterior).
[0173] Em geral, determinar a camada utilizável mais alta para o quadro atual pode envolver determinar um conjunto de índices de camada inválidos que indicam camadas que não foram recebidas de maneira válida para o quadro atual. Pode compreender adicionalmente determinar uma camada utilizável mais alta de um quadro anterior que precede o quadro atual. Pode compreender ainda adicionalmente determinar a camada utilizável mais alta como a mais baixa da camada utilizável mais alta do quadro anterior e a camada que é uma camada abaixo da camada indicada pelo menor índice no conjunto de índices de camada inválidos (se o quadro atual tiver sido codificado diferencialmente em relação ao quadro anterior).
[0174] Uma solução alternativa sempre pode analisar todas as cargas úteis de camada de aprimoramento válidas (por exemplo, cargas úteis de extensão HOA) em paralelo mesmo se elas estiverem atualmente inativas. Isso pode permitir uma comutação direta para uma camada com um índice mais baixo com qualidade total, em que a Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico (PAR) podem ser aplicados diretamente no quadro comutado.
[0175] A seguir, uma situação será descrita em que é comutada para um índice mais alto que o índice da camada utilizável mais alta do quadro anterior (por exemplo, precedente). Essa comutação para uma camada com um índice mais alto pode ser apenas aplicada se o mpegh3daFrame() tiver um usacIndependencyFlag igual a um (por exemplo, se o quadro for um quadro independente) porque todas as cargas úteis correspondentes ou estados de decodificação de quadros anteriores estão ausentes. Desse modo, o decodificador HOA mantém o índice de camada HOA MLAY(fc) igual a MLAY(k-1) até um mpegh3daFrame() com um usacIndependencyFlag igual a um (por exemplo, um quadro independente) ter sido recebido que contém dados válidos para uma camada decodificável mais alta. Então MLAY(fc) é definido como o índice de camada decodificável mais alto para o quadro atual e, consequentemente, o número de sinais de transporte /ADD,LAY (^) realmente usado é determinado. A representação HOA preliminar daquela camada é decodificada a partir do HOAFrame() e os sinais de transporte correspondentes e é aprimorada pela Predição de Sinal Espacial, pela Síntese de Sinal Direcional de Sub-Banda e pelo Decodificador de Replicação de Ambiente Paramétrico com o uso do HOAEnhFrame() analisado a partir da carga útil de extensão de camada de aprimoramento HOA do tipo ID_EXT_ELE_HOA_ENH_LAYER da camada atualmente ativa MLAY(/<).
[0176] Entende-se que o método de codificação em camadas proposto de uma representação sonora compactada pode ser implementado por um codificador para codificação em camadas de uma representação sonora compactada. Tal codificador pode compreender respectivas unidades adaptadas para realizar as respectivas etapas descritas acimas. Um exemplo de tal codificador 6000 é esquematicamente ilustrado na Figura 6. Por exemplo, tal codificador 6000 pode compreender uma unidade de atribuição de sinal de transporte 6010 adaptada para realizar a S3010 anteriormente mencionada, uma unidade de geração de carga útil de camada de extensão HOA 6020 adaptada para realizar a S3020 anteriormente mencionada, uma unidade de atribuição de carga útil de extensão HOA 6030 adaptada para realizar a S3030 anteriormente mencionada e uma unidade de sinalização ou unidade de saída 6040 adaptada para realizar a S3040 anteriormente mencionada. É adicionalmente entendido que as respectivas unidades de tal codificador podem ser incorporadas por um processador 6100 de um dispositivo de computação que é adaptado para realizar o processamento realizado por cada uma das ditas respectivas unidades, isto é, que é adaptado para realizar algumas ou todas as etapas anteriormente mencionadas do método codificação proposto esquematicamente ilustrado na Figura 3. De maneira adicional ou alternativa, o processador 6100 pode ser adaptado para realizar cada uma das etapas do método de codificação esquematicamente ilustrado na Figura 4. Com essa finalidade, o processador 6100 pode ser adaptado para implementar as respectivas unidades do codificador. O codificador ou dispositivo de computação pode compreender adicionalmente uma memória 6200 que é acessível pelo processador 6100.
[0177] É adicionalmente entendido que o método de decodificação proposto de uma representação sonora compactada que é codificada em uma pluralidade de camadas hierárquicas pode ser implementado por um decodificador para decodificar uma representação sonora compactada que é codificada em uma pluralidade de camadas hierárquicas. Tal decodificador pode compreender as respectivas unidades adaptadas para realizar as respectivas etapas descritas acima. Um exemplo de tal decodificador 7000 é esquematicamente ilustrado na Figura 7. Por exemplo, tal decodificador 7000 pode compreender uma unidade de recepção 7010 adaptada para realizar a S5010 anteriormente mencionada, uma unidade de extração de carga útil 7020 adaptada para realizar a S5020 anteriormente mencionada, uma unidade de determinação de camada utilizável mais alta 7030 adaptada para realizar a S5030 anteriormente mencionada, uma unidade de extração de carga útil de extensão HOA 7040 adaptada para realizar a S5040 anteriormente mencionada, uma unidade de geração de representação HOA reconstruída 7050 adaptada para realizar a S5050 anteriormente mencionada e uma unidade de aprimoramento 7060 adaptada para realizar a S5060 anteriormente mencionada. É adicionalmente entendido que as respectivas unidades de tal decodificador podem ser incorporadas por um processador 7100 de um dispositivo de computação que é adaptado para realizar o processamento realizado por cada uma das ditas respectivas unidades, isto é que é adaptado para realizar algumas ou todas as etapas anteriormente mencionadas do método de decodificação proposto. O decodificador ou dispositivo de computação pode compreender adicionalmente uma memória 7200 que é acessível pelo processador 7100.
[0178] A seguir, uma estrutura de dados (por exemplo, fluxo de bits) para acomodar (por exemplo, representar) a representação HOA compactada no modo de codificação em camadas será descrita. Tal estrutura de dados pode se originar do emprego dos métodos de codificação propostos e pode ser decodificada (por exemplo, descompactada) com o uso do método de decodificação proposto.
[0179] A estrutura de dados pode compreender uma pluralidade de cargas úteis de quadro HOA que correspondem a respectivas dentre uma pluralidade de camadas hierárquicas. A pluralidade de sinais de transporte pode ser atribuída a (por exemplo, pode pertencer a) a respectivas dentre a pluralidade de camadas. A estrutura de dados pode compreender uma respectiva carga útil de extensão HOA que inclui informações laterais para aprimorar parametricamente uma representação HOA reconstruída obtenível a partir dos sinais de transporte atribuídos à respectiva camada e quaisquer camadas mais baixas que a respectiva camada. As cargas úteis de quadro HOA e as cargas úteis de extensão HOA para a pluralidade de camadas podem ser dotadas dos respectivos níveis de proteção de erro, conforme indicado acima. Ademais, as cargas úteis de extensão HOA podem compreender os elementos de fluxo de bits indicados acima e podem ter um usacExtElementType of ID_EXT_ELE_HOA_ENH_LAYER. A estrutura de dados ainda pode compreender adicionalmente uma carga útil de extensão de configuração HOA e/ou uma carga útil de configuração de decodificador HOA que inclui os elementos de fluxo de bits indicados acima.
[0180] Deve-se notar que a descrição e os desenhos ilustram meramente os princípios dos métodos e aparelho proposto. Desse modo, será observado que aqueles que são versados na técnica terão capacidade para reconhecer várias disposições que, embora não explicitamente descritas ou mostradas no presente documento, incorporam os princípios da invenção e estão incluídas dentro do seu espírito e escopo. Além disso, todos os exemplos citados no presente documento são principalmente destinados a serem expressamente apenas para propósitos pedagógicos para auxiliar o leitor no entendimento dos princípios dos métodos e aparelho propostos e dos conceitos contribuídos pelos inventores para promover a técnica, e devem ser interpretados como sendo sem limitação a tais exemplos e condições especificamente citados. Além disso, todas as declarações no presente documento que citam os princípios, aspectos e modalidades da invenção, assim como exemplos específicos da mesma, se destinam a abrangem equivalentes da mesma.
[0181] Os métodos e aparelho descritos no presente documento podem ser implementados como software, firmware e/ou hardware. Certos componentes podem ser, por exemplo, implementados como software que executa em um processador ou microprocessador de sinal digital. Outros componentes podem ser, por exemplo, implementados como hardware e/ou como circuitos integrados para aplicação específica. Os sinais encontrados nos métodos e aparelho descritos podem ser armazenados em mídia, tal como, memória de acesso aleatório ou mídia de armazenamento óptico. Os mesmos podem ser transferidos através de redes, tais como redes via rádio, redes via satélite, redes sem fio ou redes com fio, por exemplo, a Internet.
ANEXO:
[0182] Alterações de fluxo de bits MPEG-H 3D propostas
[0183] Alterações são marcadas por realce em cinza:TABELA 1 — Sintaxe de mpegh3daExtElementConfig()
Figure img0006
Figure img0007
Figure img0008
TABELA 2 — Valor de usacExtElementType
Figure img0009
Figure img0010
TABELA3 — Interpretação de blocos de dados para decodificação de carga útil de extensão
Figure img0011
TABELA 4 — Sintaxe de HOADecoderConfig()
Figure img0012
Figure img0013
Figure img0014
Figure img0015
Figure img0016
Figure img0017
Figure img0018
Figure img0019
TABELA 5 — Sintaxe de HOAFrame
Figure img0020
Figure img0021
Figure img0022
Figure img0023
Figure img0024
[0184] Adicionar essa tabela
Figure img0025
Figure img0026
[0185] Atualizar essa tabela: TABELA 6 — Sintaxe de WectorDataQ
Figure img0027
Figure img0028
Figure img0029
TABELA 7 — Sintaxe de HOAPredictionInfo(DirSigChannelIds,NumOfDirSigs)
Figure img0030
Figure img0031
Figure img0032
TABELA AMD1.2 — Sintaxe de HOADirectionalPredictionlnfoQ
Figure img0033
Figure img0034
Figure img0035
Figure img0036
Figure img0037
TABELA 8 — Definição de SingleLayer
Figure img0038
codedLayerCh Esse elemento indica para a primeira (isto é base) camada o número de sinais de transporte incluídos, que é fornecido por codedLayerCh + MinNumOfCoeffsForAmbHOA. Para as camadas mais altas (isto é, aprimoramento), esse elemento indica o número de sinais adicionais incluídos em uma camada de aprimoramento em comparação com a próxima camada mais baixa, que é fornecida por codedLayerCh + 1. HOALayerChBits Esse elemento indica o número de bits para leitura codedLayerCh. NumLayers Esse elemento indica (após a leitura da HOADecoderConfig()) o número total de camadas dentro do fluxo de bits. NumHOAChannelsLay Esse elemento é uma matriz que consiste em elementos er NumLayers, cujo i-ésimo elemento indica o número de sinais de transporte incluído em todas as camadas até a i- ésima camada. 12.4.1.x Parâmetros dependentes de quadro e usuário ^LAY(^) O número de todas as camadas realmente usadas para o k- ésimo quadro (a ser especificado) no lado de decodificador. No caso de codificação em camadas (indicada por SingleLayer==0) esse número precisa ser menor ou igual ao número total de camadas presente no fluxo de bits, isto é MLAY < NumLayers. No caso de codificação em única camada (indicada por SingleLayer==1) MLAY é definida em um.
[0186] Dependendo da escolha MLAY(fc) do número /ADD,LAY (fc) de canais de transporte realmente usados para decodificação HOA espacial (isto é adicional OMiN aos canais que são implicitamente sempre usados) é computado da seguinte forma: if(SingleLayer | (!SingleLayer & MLAY(fc) == NumLayers)) { /ADD,LAY (fc) = NumOfAdditionalCoders; } else { /ADD,LAY (fc) = NumHOACannelsLayer[MLAY(fc) - 1] - MinNumOfCoeffsForAmbHOA; } VVecLength e VVecCoeffId
[0187] A palavra codedVVecLength indica: 0) Comprimento de vetor completo (elementos NumOfHoaCoeffs). Indica que todos os coeficientes para os coeficientes para os vetores predominantes (NumOfHoaCoeffs) são especificados. 1) Elementos de vetor 1 para MinNumOfCoeffsForAmbHOA e todos elementos definidos em ContAddHoaCoeff[lay] da camada atualmente ativa do índice lay=0...NumLayers-1 não são transmitidos. Para o modo de camada única SingleLayer==1 a variável NumLayers precisa ser definida igual a um. Indica que apenas aqueles coeficientes do vetor predominante que correspondem ao número maior que um MinNumOfCoeffsForAmbHOA são especificados. Ademais, aqueles coeficientes NumOfContAddAmbHoaChan[lay] identificados em ContAddAmbHoaChan[lay] são subtraídos. A lista ContAddAmbHoaChan[lay] especifica canais adicionais que correspondem a uma ordem que excede a ordem MinAmbHoaOrder. 2) Elementos de vetor 1 para MinNumOfCoeffsForAmbHOA não são transmitidos. Indica que aqueles coeficientes dos vetores predominantes que correspondem ao número maior que um MinNumOfCoeffsForAmbHOA são especificados.
[0188] No caso de codedVVecLength==1 tanto a matriz VVecLength[i] como a matriz VVecCoeffId[i][m] 2D são válidas para o VVector de índice i, nos outros casos tanto o elemento VVecLength como a matriz VVecCoeffId[m] são válidos para todos os VVector dentro do HOAFrame. Para o algoritmo de atribuição abaixo de uma função auxiliar é definido conforme exposto a seguir. switch CodedVVecLength{ caso 0: VVecLength = NumOfHoaCoeffs; for (m=0; m<VVecLength; ++m) { VVecCoeffId[m] = m; } break; caso 1: for (i=0; i < NumOfVecSigs; ++i) { lay = VecSigLayerIdx[i]; VVecLength[i] = NumOfHoaCoeffs -.MinNumOfCoeffsForAmbHOA - NumOfContAddHoaChans[lay]; CoeffIdx = MinNumOfCoeffsForAmbHOA+1; for (m=0; m<VVecLength[i]; ++m) { bIsInArray = isMemberOf(CoeffIdx, ContAddHoaCoeff[lay], NumOfContAddHoaChans[lay]); while (bIsInArray) { CoeffIdx++; bIsInArray = isMemberOf(CoeffIdx, ContAddHoaCoeff[lay], NumOfContAddHoaChans[lay]); } VVecCoeffId[i][m] = CoeffIdx-1; } } break; caso 2: VVecLength = NumOfHoaCoeffs - MinNumOfCoeffsForAmbHOA; for (m=0; m< VVecLength; ++m) { VVecCoeffId[m] = m + MinNumOfCoeffsForAmbHOA; } }
[0189] O primeiro comando switch com os três casos (casos 0-2) desse modo fornece um meio através do qual determina o comprimento de vetor predominante em termos do número (VVecLength) e índices de coeficientes (VVecCoeffId).
[0190] 12.4.1.X Conversão para elemento VVec
[0191] O tipo de desquantização do vetor V-é sinalizada pela palavra NbitsQ. O valor NbitsQ de 4 indica a quantização vetorial. Quando NbitsQ é igual a 5, uma desquantização escalar uniforme de 8 bits é realizada. Em contraste, um valor NbitsQ maior ou igual a 6 indica a aplicação de decodificação de Huffman de um vetor V-quantizado escalar. O modo de predição é denotado como o PFlag, enqanto o CbFlag representa um bit de informações de Tabela de Huffman. if (CodedVVecLength == 1) { VVecLengthUsed = VVecLength[i]; VVecCoeffIdUsed = VVecCoeffId[i]; } else { VVecLengthUsed = VVecLength; VVecCoeffIdUsed = VVecCoeffId; } if (NbitsQ(k)[i] == 4) { if (NumVvecIndices == 1) { for (m=0; m< VVecLengthUsed; ++m) { idx = VVecCoeffIdUsed[m]; v(í)idx(fc) = WeightVal[0] * VecDict[900].[VvecIdx[0]][idx]; } } else { cdbLen = O; if (N==4) { cdbLen = 32; } for (m=0; m<O; ++m) { TmpVVec[m] = 0; for (j=0; j< NumVvecIndices; ++j) { TmpVVec[m] += WeightVal[j] * VecDict[cdbLen].[VvecIdx[j]][m]; } } FNorm = 0.0; for (m=0; m< O; ++m) { FNorm += TmpVVec[m] * TmpVVec[m]; } FNorm = (N+1)/sqrt(FNorm); for (m=0; m< VVecLengthUsed; ++m) { idx = VVecCoeffIdUsed[m]; vwidx(fc)= TmpVVec[idx] * FNorm; } } } elseif (NbitsQ(k)[i] == 5) { for (m=0; m< VVecLengthUsed; ++m) { v(í)weccoeffiduSed[m](fc) = (N+1 )*aVal[i][m]; } } elseif (NbitsQ(k)[i] >= 6) { for (m=0; m< VVecLengthUsed; ++m) { v'VeecoefddusedwW = (N+1) * (2^(16 - NbitsQ(k)[i])*aVal[i][m])/2"15; if (PFlag(k)[i] == 1) { ^VVecCoeffIdUsed[m](^) += ^VVecCoeffIdUsed[m](^ — 1); } } }

Claims (8)

1. Método para decodificar uma representação Ambissonica de Ordem Superior (HOA) compactada de um som ou campo sonoro, o método CARACTERIZADO pelo fato de que compreende: receber (S5010) um fluxo de bits compreendendo a representação HOA compactada, em que o fluxo de bits compreende uma pluralidade de camadas hierárquicas que compreende uma camada base (1200) e uma ou mais camadas de aprimoramento hierárquicas (1300-1, 1300-(M-1)), determinar (S5030) uma camada utilizável mais alta (7030) entre a pluralidade de camadas hierárquicas para decodificação; determinar um valor de um parâmetro CodedVVecLength que é sinalizado no HOADecoderConfig(); determinar que CodedVVecLength=0, e com base nesta determinação, determinar um vetor com todos coeficientes para vetores predominantes da representação HOA são especificados; extrair (S5040) uma carga útil de extensão HOA (7040) atribuída à camada utilizável mais alta (7030), em que a carga útil de extensão HOA (7040) inclui informações laterais para aprimorar parametricamente uma representação HOA reconstruída (7050) que corresponde à camada utilizável mais alta (7030), em que a representação HOA reconstruída (7050) correspondendo à camada utilizável mais alta (7030) é com base nos sinais de transporte atribuídos à camada utilizável mais alta (7030) e quaisquer camadas mais baixas que a camada utilizável mais alta (7030); decodificar (S5050) a representação HOA compactada que corresponde à camada utilizável mais alta (7030) com base nas informações de camada, em que as informações da camada indicam uma camada de aprimoramento ativa; e aprimorar (S5060) parametricamente a representação HOA decodificada usando as informações laterais incluídas na carga útil de extensão HOA (7040) atribuída à camada utilizável mais alta (7030).
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações de camada incluem informações de aprimoramento que incluem pelo menos um dentre Predição de Sinal Espacial, Síntese de Sinal Direcional de Sub-Banda e Decodificador de Replicação de Ambiente Paramétrico.
3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que inclui adicionalmente elementos de vetor v que não são transmitidos para índices que são iguais aos índices de coeficientes HOA adicionais incluídos em um conjunto de ContAddHoaCoeff.
4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações de camada incluem elementos NumLayers, onde cada elemento indica um número de sinais de transporte incluído em todas as camadas até uma i- ésima camada.
5. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações de camada incluem um indicador de todas as camadas realmente usadas para um fc-ésimo quadro.
6. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações de camada indicam que todos os coeficientes para vetores predominantes são especificados.
7. Mídia portadora não transitória, CARACTERIZADO pelo fato de que porta um conjunto de instruções que quando executadas em um processador, fazem com que o processador realize um método conforme definido na reivindicação 1.
8. Aparelho para decodificar uma representação Ambissonica de Ordem Superior (HOA) compactada de um som ou campo sonoro, o aparelho CARACTERIZADO pelo fato de que compreende: um receptor configurado para receber (S5010) um fluxo de bits compreendendo a representação HOA compactada, em que o fluxo de bits compreende uma pluralidade de camadas hierárquicas que compreende uma camada base (1200) e uma ou mais camadas de aprimoramento hierárquicas (13001, 1300-(M-1)), um decodificador configurado para: determinar (S5030) uma camada utilizável mais alta (7030) entre a pluralidade de camadas hierárquicas para decodificação; determinar um valor de um parâmetro CodedVVecLength que é sinalizado no HOADecoderConfig(); determinar que CodedVVecLength=0, e com base nesta determinação, determinar um vetor com todos coeficientes para vetores predominantes da representação HOA são especificados; extrair (S5040) uma carga útil de extensão HOA (7040) atribuída à camada utilizável mais alta (7030), em que a carga útil de extensão HOA (7040) inclui informações laterais para aprimorar parametricamente uma representação HOA reconstruída (7050) que corresponde à camada utilizável mais alta (7030), em que a representação HOA reconstruída (7050) correspondendo à camada utilizável mais alta (7030) é com base nos sinais de transporte atribuídos à camada utilizável mais alta (7030) e quaisquer camadas mais baixas que a camada utilizável mais alta (7030); decodificar (S5050) a representação HOA compactada que corresponde à camada utilizável mais alta (7030) com base nas informações de camada, em que as informações da camada indicam uma camada de aprimoramento ativa; e aprimorar (S5060) parametricamente a representação HOA decodificada usando as informações laterais incluídas na carga útil de extensão HOA (7040) atribuída à camada utilizável mais alta (7030).
BR122022025233-8A 2015-10-08 2016-10-07 Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas BR122022025233B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP15306591.7 2015-10-08
EP15306591 2015-10-08
US201662361863P 2016-07-13 2016-07-13
US62/361.863 2016-07-13
PCT/EP2016/073971 WO2017060412A1 (en) 2015-10-08 2016-10-07 Layered coding and data structure for compressed higher-order ambisonics sound or sound field representations

Publications (1)

Publication Number Publication Date
BR122022025233B1 true BR122022025233B1 (pt) 2023-04-18

Family

ID=54361028

Family Applications (2)

Application Number Title Priority Date Filing Date
BR122022025224-9A BR122022025224B1 (pt) 2015-10-08 2016-10-07 Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas
BR122022025233-8A BR122022025233B1 (pt) 2015-10-08 2016-10-07 Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR122022025224-9A BR122022025224B1 (pt) 2015-10-08 2016-10-07 Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas

Country Status (22)

Country Link
US (4) US10714099B2 (pt)
EP (2) EP3360134B1 (pt)
JP (3) JP6866362B2 (pt)
KR (2) KR20230079239A (pt)
CN (6) CN116959460A (pt)
AU (3) AU2016335091B2 (pt)
BR (2) BR122022025224B1 (pt)
CA (3) CA3228657A1 (pt)
CL (1) CL2018000887A1 (pt)
CO (1) CO2018004868A2 (pt)
EA (1) EA035064B1 (pt)
ES (1) ES2903247T3 (pt)
HK (2) HK1250586A1 (pt)
IL (3) IL290796B2 (pt)
MA (1) MA45880B1 (pt)
MX (2) MX2018004166A (pt)
MY (1) MY188894A (pt)
PH (1) PH12018500704A1 (pt)
SA (1) SA518391264B1 (pt)
SG (1) SG10202001597WA (pt)
WO (1) WO2017060412A1 (pt)
ZA (3) ZA201802540B (pt)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG10202001597WA (en) * 2015-10-08 2020-04-29 Dolby Int Ab Layered coding and data structure for compressed higher-order ambisonics sound or sound field representations
US10075802B1 (en) 2017-08-08 2018-09-11 Qualcomm Incorporated Bitrate allocation for higher order ambisonic audio data
US11270711B2 (en) 2017-12-21 2022-03-08 Qualcomm Incorproated Higher order ambisonic audio data
US10657974B2 (en) 2017-12-21 2020-05-19 Qualcomm Incorporated Priority information for higher order ambisonic audio data
WO2019198612A1 (ja) 2018-04-12 2019-10-17 三生医薬株式会社 造粒組成物
US20210409888A1 (en) * 2020-06-29 2021-12-30 Qualcomm Incorporated Sound field adjustment

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003241799A (ja) * 2002-02-15 2003-08-29 Nippon Telegr & Teleph Corp <Ntt> 音響符号化方法、復号化方法、符号化装置、復号化装置及び符号化プログラム、復号化プログラム
US7177804B2 (en) 2005-05-31 2007-02-13 Microsoft Corporation Sub-band voice codec with multi-stage codebooks and redundant coding
EP1987513B1 (fr) 2006-02-06 2009-09-09 France Telecom Procede et dispositif de codage hierarchique d'un signal audio source, procede et dispositif de decodage, programmes et signal correspondants
PL2304719T3 (pl) 2008-07-11 2017-12-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Koder audio, sposoby dostarczania strumienia audio oraz program komputerowy
EP2346029B1 (en) 2008-07-11 2013-06-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, method for encoding an audio signal and corresponding computer program
US20110320193A1 (en) 2009-03-13 2011-12-29 Panasonic Corporation Speech encoding device, speech decoding device, speech encoding method, and speech decoding method
SG182466A1 (en) 2010-01-12 2012-08-30 Fraunhofer Ges Forschung Audio encoder, audio decoder, method for encoding and audio information, method for decoding an audio information and computer program using a modification of a number representation of a numeric previous context value
EP2395505A1 (en) 2010-06-11 2011-12-14 Thomson Licensing Method and apparatus for searching in a layered hierarchical bit stream followed by replay, said bit stream including a base layer and at least one enhancement layer
EP2469741A1 (en) * 2010-12-21 2012-06-27 Thomson Licensing Method and apparatus for encoding and decoding successive frames of an ambisonics representation of a 2- or 3-dimensional sound field
TWI505262B (zh) * 2012-05-15 2015-10-21 Dolby Int Ab 具多重子流之多通道音頻信號的有效編碼與解碼
WO2014046916A1 (en) 2012-09-21 2014-03-27 Dolby Laboratories Licensing Corporation Layered approach to spatial audio coding
US9558785B2 (en) 2013-04-05 2017-01-31 Dts, Inc. Layered audio coding and transmission
US9502044B2 (en) * 2013-05-29 2016-11-22 Qualcomm Incorporated Compression of decomposed representations of a sound field
CN105264595B (zh) 2013-06-05 2019-10-01 杜比国际公司 用于编码和解码音频信号的方法和装置
US20150194157A1 (en) * 2014-01-06 2015-07-09 Nvidia Corporation System, method, and computer program product for artifact reduction in high-frequency regeneration audio signals
US9922656B2 (en) * 2014-01-30 2018-03-20 Qualcomm Incorporated Transitioning of ambient higher-order ambisonic coefficients
EP2922057A1 (en) * 2014-03-21 2015-09-23 Thomson Licensing Method for compressing a Higher Order Ambisonics (HOA) signal, method for decompressing a compressed HOA signal, apparatus for compressing a HOA signal, and apparatus for decompressing a compressed HOA signal
WO2015140292A1 (en) 2014-03-21 2015-09-24 Thomson Licensing Method for compressing a higher order ambisonics (hoa) signal, method for decompressing a compressed hoa signal, apparatus for compressing a hoa signal, and apparatus for decompressing a compressed hoa signal
KR102428794B1 (ko) 2014-03-21 2022-08-04 돌비 인터네셔널 에이비 고차 앰비소닉스(hoa) 신호를 압축하는 방법, 압축된 hoa 신호를 압축 해제하는 방법, hoa 신호를 압축하기 위한 장치, 및 압축된 hoa 신호를 압축 해제하기 위한 장치
SG10202001597WA (en) * 2015-10-08 2020-04-29 Dolby Int Ab Layered coding and data structure for compressed higher-order ambisonics sound or sound field representations

Also Published As

Publication number Publication date
JP2018530000A (ja) 2018-10-11
CL2018000887A1 (es) 2018-07-06
US11373661B2 (en) 2022-06-28
EP3926626A1 (en) 2021-12-22
HK1250586A1 (zh) 2019-01-04
ZA202204514B (en) 2023-11-29
IL258362A (en) 2018-05-31
CN116312576A (zh) 2023-06-23
US20180268827A1 (en) 2018-09-20
EP3360134A1 (en) 2018-08-15
AU2024200839A1 (en) 2024-02-29
EA035064B1 (ru) 2020-04-23
US20220284907A1 (en) 2022-09-08
CN116913291A (zh) 2023-10-20
CA3228629A1 (en) 2017-04-13
KR20180063279A (ko) 2018-06-11
IL258362B (en) 2022-04-01
CA3000781A1 (en) 2017-04-13
BR112018007171A2 (pt) 2018-10-16
PH12018500704B1 (en) 2018-10-15
AU2021269310A1 (en) 2021-12-09
CN108140390A (zh) 2018-06-08
PH12018500704A1 (en) 2018-10-15
US11955130B2 (en) 2024-04-09
ES2903247T3 (es) 2022-03-31
WO2017060412A1 (en) 2017-04-13
EP3926626B1 (en) 2024-05-22
CO2018004868A2 (es) 2018-08-10
MA45880B1 (fr) 2022-01-31
CN116959460A (zh) 2023-10-27
SA518391264B1 (ar) 2021-10-06
JP2023082173A (ja) 2023-06-13
US10714099B2 (en) 2020-07-14
KR20230079239A (ko) 2023-06-05
BR122019018870A2 (pt) 2018-10-16
MX2021002517A (es) 2021-04-28
IL290796B1 (en) 2023-06-01
EP3360134B1 (en) 2021-12-01
MA45880A (fr) 2018-08-15
MY188894A (en) 2022-01-12
IL302588A (en) 2023-07-01
CN116312575A (zh) 2023-06-23
JP6866362B2 (ja) 2021-04-28
BR122019018870A8 (pt) 2022-09-13
AU2016335091B2 (en) 2021-08-19
KR102537337B1 (ko) 2023-05-26
CA3228657A1 (en) 2017-04-13
BR122022025224B1 (pt) 2023-04-18
JP2021107937A (ja) 2021-07-29
AU2016335091A1 (en) 2018-05-10
EA201890845A1 (ru) 2018-10-31
CN116913292A (zh) 2023-10-20
ZA202001987B (en) 2022-12-21
AU2021269310B2 (en) 2023-11-16
MX2018004166A (es) 2018-08-01
IL290796B2 (en) 2023-10-01
ZA201802540B (en) 2020-08-26
JP7258072B2 (ja) 2023-04-14
US20240177718A1 (en) 2024-05-30
US20210035588A1 (en) 2021-02-04
SG10202001597WA (en) 2020-04-29
CA3000781C (en) 2024-03-12
HK1251712A1 (zh) 2019-02-01
IL290796A (en) 2022-04-01
CN108140390B (zh) 2023-06-09

Similar Documents

Publication Publication Date Title
BR122022025233B1 (pt) Método, aparelho e mídia portadora não transitória para codificação em camadas e estrutura de dados para representações sonoras ou de campo sonoro ambissônica de ordem superior compactadas
BR112018007172B1 (pt) Método para decodificar uma representação de som ambissônica de ordem superior (hoa) compactada de um som ou campo sonoro
BR122020023376B1 (pt) Aparelho para decodificar uma representação ambissônica de ordem superior (hoa) compactada
BR122020023384B1 (pt) Aparelho para decodificar uma representação ambissônica de ordem superior compactada de um som ou campo sonoro
BR122019018870B1 (pt) Método para decodificar uma representação ambissônica de ordem superior compactada de um som ou campo sonoro e mídia legível por computador não transitória
BR112018007171B1 (pt) Método para decodificar uma representação ambissônica de ordem superior compactada de um som ou campo sonoro
BR122020022657B1 (pt) Meio não transitório legível por computador para decodificar uma representação ambissônica de ordem superior (hoa) compactada de um som ou campo sonoro
BR122020022653B1 (pt) Aparelho para decodificar uma representação ambissônica de ordem superior (hoa) compactada de um som ou campo sonoro
OA18601A (en) Layered coding and data structure for compressed higher-order ambisonics sound or sound field representations.
BR112018007169B1 (pt) Método para decodificar uma representação ambissônica de ordem superior (hoa) compactada de um som ou campo sonoro
BR122019018962B1 (pt) Método, aparelho e meio legível por computador não transitório para decodificar uma representação de ambissônica de ordem superior (hoa) compactada de um som ou campo sonoro
BR122019018964B1 (pt) Método, aparelho e meio legível por computador não transitório para decodificar uma representação de ambissônica de ordem superior (hoa) compactada de um som ou campo sonoro

Legal Events

Date Code Title Description
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 07/10/2016, OBSERVADAS AS CONDICOES LEGAIS