BR112019026971B1 - HIGH BANDWIDTH RESIDUAL PREDICTION WITH INTER-CHANNEL BANDWIDTH EXTENSION IN THE TIME DOMAIN - Google Patents

HIGH BANDWIDTH RESIDUAL PREDICTION WITH INTER-CHANNEL BANDWIDTH EXTENSION IN THE TIME DOMAIN Download PDF

Info

Publication number
BR112019026971B1
BR112019026971B1 BR112019026971-1A BR112019026971A BR112019026971B1 BR 112019026971 B1 BR112019026971 B1 BR 112019026971B1 BR 112019026971 A BR112019026971 A BR 112019026971A BR 112019026971 B1 BR112019026971 B1 BR 112019026971B1
Authority
BR
Brazil
Prior art keywords
band
channel
signal
generate
lowband
Prior art date
Application number
BR112019026971-1A
Other languages
Portuguese (pt)
Other versions
BR112019026971A2 (en
Inventor
Venkatraman Atti
Venkata Subrahmanyam Chandra Sekhar Chebiyyam
Original Assignee
Qualcomm Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US16/000,551 external-priority patent/US10431231B2/en
Application filed by Qualcomm Incorporated filed Critical Qualcomm Incorporated
Publication of BR112019026971A2 publication Critical patent/BR112019026971A2/en
Publication of BR112019026971B1 publication Critical patent/BR112019026971B1/en

Links

Abstract

Um método inclui a decodificação de uma porção de banda baixa de um sinal Mid codificado para gerar um sinal Mid decodificado de banda baixa. O método inclui também processar o sinal Mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa e gerar um canal esquerdo de banda baixa e um canal direito de banda baixa baseado parcialmente no sinal Mid de banda baixa decodificado e no sinal de predição residual de banda baixa. O método inclui adicionalmente decodificar uma porção de banda alta do sinal Mid codificado para gerar um sinal Mid de banda alta decodificado no domínio do tempo e processar o sinal Mid de banda alta decodificado no domínio do tempo para gerar um sinal de predição residual de banda alta no domínio do tempo. O método inclui também gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal Mid de banda alta decodificado no domínio do tempo e no sinal de predição residual de banda alta no domínio do tempo.One method includes decoding a lowband portion of an encoded Mid signal to generate a lowband decoded Mid signal. The method further includes processing the decoded lowband Mid signal to generate a lowband residual prediction signal and generating a lowband left channel and a lowband right channel based partially on the decoded lowband Mid signal and the lowband signal. low-band residual prediction. The method further includes decoding a highband portion of the encoded Mid signal to generate a time domain decoded highband Mid signal and processing the time domain decoded highband Mid signal to generate a highband residual prediction signal. in the time domain. The method also includes generating a high-band left channel and a high-band right channel based on the time-domain decoded high-band Mid signal and the time-domain high-band residual prediction signal.

Description

I. Reivindicação de PrioridadeI. Priority Claim

[0001] O presente pedido reivindica o benefício de prioridade do Pedido de Patente Provisório Norte- Americano de Propriedade Comum n° 62/526,854, depositado em 29 de junho de 2017, e do Pedido de Patente Não Provisório Norte-Americano n° 16/000,551, depositado em 5 de junho de 2018, o conteúdo de cada um dos pedidos acima mencionados sendo expressamente incorporado neste documento por referência em sua totalidade.[0001] This application claims priority benefit from Commonly Owned US Provisional Patent Application No. 62/526,854, filed on June 29, 2017, and US Non-Provisional Patent Application No. 16/ 000.551, filed June 5, 2018, the contents of each of the aforementioned applications being expressly incorporated herein by reference in their entirety.

II. CampoII. Field

[0002] A presente descrição é em termos gerais relacionada à codificação de múltiplos sinais de áudio.[0002] The present description is in general terms related to the coding of multiple audio signals.

III. Descrição da Técnica RelacionadaIII. Description of the Related Technique

[0003] Os avanços na tecnologia resultaram em dispositivos de computação menores e mais poderosos. Por exemplo, uma variedade de dispositivos portáteis de computação pessoal, incluindo telefones sem fio, tais como celulares e telefones inteligentes, tablets e laptops, são pequenos, leves e fáceis de transportar pelos usuários. Esses dispositivos podem comunicar pacotes de voz e dados através de redes sem fio. Além disso, muitos desses dispositivos incorporam funcionalidades adicionais, tais como uma câmera fotográfica digital, uma câmera de vídeo digital, um gravador digital e um reprodutor de arquivos de áudio. Além disso, esses dispositivos podem processar instruções executáveis, incluindo aplicativos de software, tal como um navegador da Web, que podem ser utilizados para acessar a Internet. Como tal, esses dispositivos podem incluir recursos computacionais significativos.[0003] Advances in technology have resulted in smaller and more powerful computing devices. For example, a variety of portable personal computing devices, including cordless phones such as cell phones and smart phones, tablets and laptops, are small, lightweight and easy for users to carry. These devices can communicate voice and data packets over wireless networks. In addition, many of these devices incorporate additional functionality, such as a digital still camera, a digital video camera, a digital recorder and an audio file player. In addition, these devices can process executable instructions, including software applications, such as a web browser, that can be used to access the Internet. As such, these devices can include significant computational resources.

[0004] Um dispositivo de computação pode incluir ou pode ser acoplado a vários microfones para receber sinais de áudio. Geralmente, uma fonte de som está mais próxima de um primeiro microfone do que de um segundo microfone dos múltiplos microfones. Por conseguinte, um segundo sinal de áudio recebido a partir do segundo microfone pode ser retardado em relação a um primeiro sinal de áudio recebido a partir do primeiro microfone devido às respectivas distâncias dos microfones em relação à fonte de som. Em outras implementações, o primeiro sinal de áudio pode ser retardado em relação ao segundo sinal de áudio. Na codificação estéreo, os sinais de áudio a partir dos microfones podem ser codificados para gerar um sinal mid e um ou mais sinais side. O sinal mid corresponde a uma soma do primeiro sinal de áudio e do segundo sinal de áudio. Um sinal side corresponde a uma diferença entre o primeiro sinal de áudio e o segundo sinal de áudio.[0004] A computing device may include or may be coupled to multiple microphones to receive audio signals. Generally, a sound source is closer to a first microphone than a second microphone of the multiple microphones. Therefore, a second audio signal received from the second microphone may be delayed with respect to a first audio signal received from the first microphone due to the microphones' respective distances from the sound source. In other implementations, the first audio signal may be delayed relative to the second audio signal. In stereo encoding, audio signals from microphones can be encoded to generate a mid signal and one or more side signals. The mid signal corresponds to a sum of the first audio signal and the second audio signal. A side signal corresponds to a difference between the first audio signal and the second audio signal.

IV. SumárioIV. summary

[0005] Em uma implementação particular, um dispositivo inclui um decodificador de sinal mid de banda baixa configurado para decodificar uma porção de banda baixa de um sinal mid codificado para gerar um sinal mid de banda baixa decodificado. O dispositivo inclui também uma unidade de predição residual de banda baixa configurada para processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa. O dispositivo inclui adicionalmente um processador up-mix configurado para gerar um canal esquerdo de banda baixa e um canal direito de banda baixa com base parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual de banda baixa. O dispositivo inclui também um decodificador de sinal mid de banda alta configurado para decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado no domínio do tempo. O dispositivo inclui adicionalmente uma unidade de predição residual de banda alta configurada para processar o sinal mid de banda alta decodificado no domínio do tempo para gerar um sinal de predição residual de banda alta no domínio do tempo. O dispositivo inclui também um decodificador de extensão de largura de banda inter-canal configurado para gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado no domínio do tempo e no sinal de predição residual de banda alta no domínio do tempo.[0005] In a particular implementation, a device includes a lowband mid signal decoder configured to decode a lowband portion of an encoded mid signal to generate a decoded lowband mid signal. The device also includes a lowband residual prediction unit configured to process the decoded lowband mid signal to generate a lowband residual prediction signal. The device further includes an up-mix processor configured to generate a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal and the lowband residual prediction signal. The device also includes a high band mid signal decoder configured to decode a high band portion of the encoded mid signal to generate a time domain decoded high band mid signal. The device further includes a high-band residual prediction unit configured to process the time-domain decoded high-band mid signal to generate a high-band time-domain residual prediction signal. The device also includes an inter-channel bandwidth extension decoder configured to generate a high-band left channel and a high-band right channel based on the time-domain decoded high-band mid signal and the residual prediction signal. high bandwidth in the time domain.

[0006] Em outra implementação particular, um método inclui decodificar uma porção de banda baixa de um sinal mid codificado para gerar um sinal mid de banda baixa decodificado. O método inclui também processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa e gerar um canal esquerdo de banda baixa e um canal direito de banda baixa com base parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual da banda baixa. O método inclui adicionalmente decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado e processar o sinal mid de banda alta decodificado para gerar um sinal de predição residual de banda alta. O método inclui também gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado e no sinal de predição residual de banda alta.[0006] In another particular implementation, a method includes decoding a lowband portion of an encoded mid signal to generate a decoded lowband mid signal. The method also includes processing the decoded lowband mid signal to generate a lowband residual prediction signal and generating a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal and the lowband mid signal. low-band residual prediction. The method further includes decoding a highband portion of the encoded mid signal to generate a decoded highband mid signal and processing the decoded highband mid signal to generate a highband residual prediction signal. The method further includes generating a highband left channel and a highband right channel based on the decoded highband mid signal and the highband residual prediction signal.

[0007] Em outra implementação particular, um meio legível por computador não transitório inclui instruções que, quando executadas por um processador dentro de um decodificador, fazem com que o decodificador realize operações, incluindo a decodificação de uma porção de banda baixa de um sinal mid codificado para gerar um sinal mid de banda baixa decodificado. As operações incluem também o processamento do sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa e a geração de um canal esquerdo de banda baixa e um canal direito de banda baixa com base parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual de banda baixa. As operações incluem também decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado e processar o sinal mid de banda alta decodificado para gerar um sinal de predição residual de banda alta. As operações incluem também gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado e no sinal de predição residual de banda alta.[0007] In another particular implementation, a non-transient computer-readable medium includes instructions that, when executed by a processor within a decoder, cause the decoder to perform operations including decoding a low-band portion of a mid signal encoded to generate a decoded low-band mid signal. Operations also include processing the decoded lowband mid signal to generate a lowband residual prediction signal and generating a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal. and the low-band residual prediction signal. The operations also include decoding a highband portion of the encoded mid signal to generate a decoded highband mid signal and processing the decoded highband mid signal to generate a highband residual prediction signal. The operations also include generating a highband left channel and a highband right channel based on the decoded highband mid signal and the highband residual prediction signal.

[0008] Em outra implementação particular, um dispositivo inclui meios para decodificar uma porção de banda baixa de um sinal mid codificado para gerar um sinal mid de banda baixa decodificado. O dispositivo inclui também meios para processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa e meios para gerar um canal esquerdo de banda baixa e um canal direito de banda baixa baseado parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual de banda baixa. O dispositivo inclui adicionalmente meios para decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado e meios para processar o sinal mid de banda alta decodificado para gerar um sinal de predição residual de banda alta. O dispositivo inclui também meios para gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado e no sinal de predição residual de banda alta.[0008] In another particular implementation, an apparatus includes means for decoding a lowband portion of an encoded mid signal to generate a decoded lowband mid signal. The device also includes means for processing the decoded lowband mid signal to generate a lowband residual prediction signal and means for generating a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal. and the low-band residual prediction signal. The device further includes means for decoding a highband portion of the encoded mid signal to generate a decoded highband mid signal and means for processing the decoded highband mid signal to generate a highband residual prediction signal. The device also includes means for generating a highband left channel and a highband right channel based on the decoded highband mid signal and the highband residual prediction signal.

[0009] Outras implementações, vantagens e características da presente descrição se tornarão aparentes após a revisão de todo o pedido, incluindo as seguintes seções: Breve Descrição dos Desenhos, Descrição Detalhada e Reivindicações.[0009] Other implementations, advantages, and features of the present description will become apparent upon review of the entire application, including the following sections: Brief Description of Drawings, Detailed Description, and Claims.

V. Breve Descrição dos DesenhosV. Brief Description of the Drawings

[0010] A FIG. 1 é um diagrama de blocos de um exemplo ilustrativo particular de um sistema que inclui um decodificador operável para predizer um canal residual de banda alta e para realizar operações de decodificação de extensão de largura de banda inter-canal (ICBWE) no domínio do tempo;[0010] FIG. 1 is a block diagram of a particular illustrative example of a system including a decoder operable to predict a high-band residual channel and to perform time-domain inter-channel bandwidth extension (ICBWE) decoding operations;

[0011] A FIG. 2 é um diagrama ilustrando o decodificador da FIG. 1;[0011] FIG. 2 is a diagram illustrating the decoder of FIG. 1;

[0012] A FIG. 3 é um diagrama ilustrando um decodificador ICBWE;[0012] FIG. 3 is a diagram illustrating an ICBWE decoder;

[0013] A FIG. 4 é um exemplo particular de um método para predizer um canal residual de banda alta;[0013] FIG. 4 is a particular example of a method for predicting a high-band residual channel;

[0014] A FIG. 5 é um diagrama de blocos de um exemplo ilustrativo particular de um dispositivo móvel que é operável para predizer um canal residual de banda alta e para realizar operações de decodificação ICBWE no domínio do tempo; e[0014] FIG. 5 is a block diagram of a particular illustrative example of a mobile device that is operable to predict a high-band residual channel and to perform time-domain ICBWE decoding operations; It is

[0015] A FIG. 6 é um diagrama de blocos de uma estação base que é operável para predizer um canal residual de banda alta e para realizar operações de decodificação ICBWE no domínio do tempo.[0015] FIG. 6 is a block diagram of a base station that is operable to predict a high-band residual channel and to perform time-domain ICBWE decoding operations.

VI. Descrição detalhadaSAW. Detailed Description

[0016] Aspectos particulares da presente descrição são descritos abaixo com referência aos desenhos. Na descrição, as características comuns são designadas por números de referência comuns. Conforme utilizado neste documento, várias terminologias são utilizadas com a finalidade de descrever apenas implementações particulares e não se destinam a limitar as implementações. Por exemplo, as formas singulares "um”, “uma", "o” e “a" pretendem incluir também as formas plurais, a menos que o contexto indique claramente o contrário. Pode ser ainda entendido que os termos "compreende" e "compreendendo" podem ser utilizados de forma intercambiável com "inclui" ou "incluindo". Adicionalmente, será entendido que o termo "em que" pode ser utilizado de forma intercambiável com "onde". Conforme utilizado neste documento, um termo ordinal (por exemplo, "primeiro(a)", "segundo(a)", "terceiro(a)", etc.) utilizado para modificar um elemento, tal como uma estrutura, um componente, uma operação etc., não é por si só indicativo de qualquer prioridade ou ordem do elemento em relação a outro elemento, mas apenas distingue o elemento de outro elemento com o mesmo nome (mas para utilização do termo ordinal). Conforme utilizado neste documento, o termo "conjunto" refere-se a um ou mais de um elemento particular, e o termo "pluralidade" refere-se a múltiplos (por exemplo, dois ou mais) de um elemento particular.[0016] Particular aspects of the present description are described below with reference to the drawings. In the description, common features are designated by common reference numbers. As used in this document, various terminologies are used for the purpose of describing particular implementations only and are not intended to limit implementations. For example, the singular forms "a", "an", "the" and "a" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It can be further understood that the terms "comprises" and "comprising" may be used interchangeably with "includes" or "including". Additionally, it will be understood that the term "where" may be used interchangeably with "where". As used in this document, an ordinal term (for example, "first", "second", "third", etc.) used to modify an element, such as a structure, a component, an operation etc., is not in itself indicative of any priority or order of the element relative to another element, but only distinguishes the element from another element of the same name (but to use the term ordinal). As used herein, the term "set" refers to one or more of a particular element, and the term "plurality" refers to multiples (e.g., two or more) of a particular element.

[0017] Na presente descrição, termos como "determinação", "cálculo", "mudança", "ajuste" etc. podem ser utilizados para descrever como uma ou mais operações são realizadas. Deve ser notado que esses termos não devem ser interpretados como limitantes e outras técnicas podem ser utilizadas para realizar operações similares. Adicionalmente, conforme referido neste documento, "gerar", "calcular", "utilizar", "selecionar", "acessar" e "determinar" podem ser utilizados de forma intercambiável. Por exemplo, "gerar", "calcular" ou "determinar" um parâmetro (ou um sinal) pode se referir a gerar, calcular ou determinar ativamente o parâmetro (ou sinal) ou pode se referir a utilizar, selecionar ou acessar o parâmetro (ou sinal) já gerado, tal como por outro componente ou dispositivo.[0017] In the present description, terms such as "determination", "calculation", "change", "adjustment" etc. can be used to describe how one or more operations are performed. It should be noted that these terms are not to be construed as limiting and other techniques may be used to perform similar operations. Additionally, as referred to in this document, "generate", "calculate", "use", "select", "access" and "determine" may be used interchangeably. For example, "generate", "calculate" or "determine" a parameter (or a signal) can refer to actively generating, calculating or determining the parameter (or signal) or it can refer to using, selecting or accessing the parameter ( or signal) already generated, such as by another component or device.

[0018] São descritos sistemas e dispositivos operáveis para codificar e decodificar múltiplos sinais de áudio. Um dispositivo pode incluir um codificador configurado para codificar os múltiplos sinais de áudio. Os múltiplos sinais de áudio podem ser capturados simultaneamente no tempo utilizando múltiplos dispositivos de gravação, por exemplo, múltiplos microfones. Em alguns exemplos, os múltiplos sinais de áudio (ou áudio multicanal) podem ser sinteticamente (por exemplo, artificialmente) gerados pela multiplexação de vários canais de áudio que são gravados ao mesmo tempo ou em momentos diferentes. Como exemplos ilustrativos, a gravação ou a multiplexação simultânea dos canais de áudio pode resultar em uma configuração de 2 canais (ou seja, Estéreo: Esquerdo e Direito), uma configuração de 5.1 canais (canais Esquerdo, Direito, Central, Surround Esquerdo, Surround Direito e de ênfase de baixa frequência (LFE)), uma configuração de 7.1 canais, uma configuração de 7.1 + 4 canais, uma configuração de 22.2 canais ou uma configuração de N-canais.[0018] Operable systems and devices for encoding and decoding multiple audio signals are described. A device may include an encoder configured to encode multiple audio signals. Multiple audio signals can be captured simultaneously in time using multiple recording devices, for example multiple microphones. In some instances, multiple audio signals (or multichannel audio) can be synthetically (eg, artificially) generated by multiplexing multiple audio channels that are recorded at the same time or at different times. As illustrative examples, simultaneous recording or multiplexing of audio channels can result in a 2-channel configuration (i.e. Stereo: Left and Right), a 5.1-channel configuration (Left, Right, Center, Left Surround, Left Surround, Right and Low Frequency Emphasis (LFE)), a 7.1-channel configuration, a 7.1 + 4-channel configuration, a 22.2-channel configuration, or an N-channel configuration.

[0019] Os dispositivos de captura de áudio nas salas de teleconferência (ou salas de telepresença) podem incluir múltiplos microfones que adquirem áudio espacial. O áudio espacial pode incluir fala, bem como áudio de fundo que é codificado e transmitido. A fala/áudio a partir de uma determinada fonte (por exemplo, um locutor) pode chegar aos múltiplos microfones em momentos diferentes, dependendo de como os microfones estão organizados, bem como onde a fonte (por exemplo, o locutor) está localizada em relação aos microfones e dimensões da sala. Por exemplo, uma fonte de som (por exemplo, um locutor) pode estar mais próxima de um primeiro microfone associado com o dispositivo do que de um segundo microfone associado com o dispositivo. Assim, um som emitido a partir da fonte de som pode alcançar o primeiro microfone antes do segundo microfone. O dispositivo pode receber um primeiro sinal de áudio através do primeiro microfone e pode receber um segundo sinal de áudio através do segundo microfone.[0019] Audio capture devices in teleconference rooms (or telepresence rooms) may include multiple microphones that acquire spatial audio. Spatial audio can include speech as well as background audio that is encoded and streamed. Speech/audio from a given source (e.g., a speaker) may arrive at multiple microphones at different times, depending on how the microphones are arranged, as well as where the source (e.g., speaker) is located in relation to microphones and room dimensions. For example, a sound source (eg a speaker) may be closer to a first microphone associated with the device than a second microphone associated with the device. Thus, a sound emitted from the sound source can reach the first microphone before the second microphone. The device can receive a first audio signal through the first microphone and can receive a second audio signal through the second microphone.

[0020] A codificação mid-side (MS) e a codificação estéreo paramétrica (PS) são técnicas de codificação estéreo que podem fornecer maior eficiência sobre as técnicas de codificação dual-mono. Na codificação dual-mono, o canal (ou sinal) esquerdo (L) e o canal (ou sinal) direito (R) são codificados independentemente, sem fazer uso da correlação inter-canal. A codificação MS reduz a redundância entre um par de canais L/R correlacionados ao transformar o canal esquerdo e o canal direito em um canal de soma e um canal de diferença (por exemplo, um sinal side) antes da codificação. O sinal de soma (referido também como sinal mid) e o sinal de diferença (referido também como sinal side) são forma de onda codificada ou codificada com base em um modelo de codificação MS. São gastos relativamente mais bits no sinal mid do que no sinal side. A codificação PS reduz a redundância em cada sub-banda ao transformar os sinais L/R em um sinal de soma (ou sinal mid) e em um conjunto de parâmetros side. Os parâmetros side podem indicar uma diferença de intensidade inter-canal (IID), uma diferença de fase inter-canal (IPD), uma diferença de tempo inter-canal (ITD), ganhos de predição side ou residual, etc. O sinal de soma é codificado em forma de onda e transmitido junto com os parâmetros side. Em um sistema híbrido, o sinal side pode ser de forma de onda codificada nas bandas mais baixas (por exemplo, menor que 2 kilohertz (kHz)) e PS codificada nas bandas superiores (por exemplo, maior ou igual a 2 kHz) onde a preservação de fase inter-canal é perceptualmente menos crítica. Em algumas implementações, a codificação PS pode ser utilizada nas bandas mais baixas também para reduzir a redundância inter-canal antes de codificação de forma de onda.[0020] Mid-side encoding (MS) and parametric stereo encoding (PS) are stereo encoding techniques that can provide greater efficiency over dual-mono encoding techniques. In dual-mono coding, the left (L) channel (or signal) and the right (R) channel (or signal) are coded independently, without making use of inter-channel correlation. MS encoding reduces the redundancy between a pair of correlated L/R channels by transforming the left and right channels into a sum channel and a difference channel (eg a side signal) before encoding. The sum signal (also referred to as the mid signal) and the difference signal (also referred to as the side signal) are encoded or encoded waveform based on an MS coding model. Relatively more bits are spent on the mid signal than on the side signal. PS encoding reduces redundancy in each subband by transforming the L/R signals into a sum signal (or mid signal) and a set of side parameters. The side parameters can indicate an inter-channel intensity difference (IID), an inter-channel phase difference (IPD), an inter-channel time difference (ITD), side or residual prediction gains, etc. The sum signal is waveform encoded and transmitted along with the side parameters. In a hybrid system, the side signal can be waveform encoded in the lower bands (e.g. less than 2 kilohertz (kHz)) and PS encoded in the higher bands (e.g. greater than or equal to 2 kHz) where the inter-channel phase preservation is perceptually less critical. In some implementations, PS encoding may be used in the lower bands as well to reduce inter-channel redundancy prior to waveform encoding.

[0021] A codificação MS e a codificação PS podem ser feitas no domínio da frequência ou no domínio da sub-banda. Em alguns exemplos, o canal Esquerdo e o canal Direito podem não estar correlacionados. Por exemplo, o canal Esquerdo e o canal Direito podem incluir sinais sintéticos não correlacionados. Quando o canal Esquerdo e o canal Direito não estão correlacionados, a eficiência de codificação da codificação MS, da codificação PS, ou de ambas, pode se aproximar da eficiência de codificação da codificação dual-mono.[0021] MS encoding and PS encoding can be done in frequency domain or subband domain. In some examples, the Left channel and the Right channel may not be correlated. For example, the Left channel and the Right channel can include uncorrelated synthetic signals. When Left channel and Right channel are not correlated, the coding efficiency of MS encoding, PS encoding, or both can approach the coding efficiency of dual-mono encoding.

[0022] Dependendo da configuração de gravação, pode haver uma mudança temporal entre um canal Esquerdo e um canal Direito, além de outros efeitos espaciais, tais como eco e reverberação de ambiente. Se o desvio temporal e a incompatibilidade de fase entre os canais não forem compensados, o canal de soma e o canal de diferença podem conter energias comparáveis, reduzindo os ganhos de codificação associados às técnicas de MS ou de PS. A redução nos ganhos de codificação pode ser baseada na quantidade de desvio temporal (ou fase). As energias comparáveis do sinal de soma e do sinal de diferença podem limitar a utilização da codificação MS em certos quadros em que os canais são desviados temporalmente, mas são altamente correlacionados. Na codificação estéreo, um sinal Mid (por exemplo, um canal de soma) e um sinal Side (por exemplo, um canal de diferença) podem ser gerados com base na seguinte fórmula: M=(L+R)/2, S=(L-R)/2, Fórmula 1[0022] Depending on the recording setup, there may be a temporal shift between a Left and Right channel, as well as other spatial effects such as ambient echo and reverb. If the temporal offset and phase mismatch between the channels are not compensated for, the sum channel and the difference channel can contain comparable energies, reducing the coding gains associated with MS or PS techniques. The reduction in coding gains can be based on the amount of time (or phase) shift. The comparable sum signal and difference signal energies may limit the use of MS coding in certain frames where the channels are time shifted but highly correlated. In stereo encoding, a Mid signal (eg a sum channel) and a Side signal (eg a difference channel) can be generated based on the following formula: M=(L+R)/2, S= (L-R)/2, Formula 1

[0023] Onde M corresponde ao sinal Mid, S corresponde ao sinal Side, L corresponde ao canal Esquerdo e R corresponde ao canal Direito.[0023] Where M corresponds to the Mid signal, S corresponds to the Side signal, L corresponds to the Left channel and R corresponds to the Right channel.

[0024] Em alguns casos, o sinal Mid e o sinal Side podem ser gerados com base na seguinte fórmula: M=c(L+R), S = c(L-R), Fórmula 2[0024] In some cases, the Mid signal and the Side signal can be generated based on the following formula: M=c(L+R), S = c(L-R), Formula 2

[0025] Onde c corresponde a um valor complexo que é dependente da frequência. A geração do sinal Mid e do sinal Side com base na Fórmula 1 ou na Fórmula 2 pode ser chamada de "downmixing". Um processo reverso de gerar o canal Esquerdo e o canal Direito a partir do sinal Mid e do sinal Side com base na Fórmula 1 ou na Fórmula 2 pode ser referido como "upmixing".[0025] Where c corresponds to a complex value that is frequency dependent. The generation of the Mid signal and the Side signal based on Formula 1 or Formula 2 can be called "downmixing". A reverse process of generating the Left channel and the Right channel from the Mid signal and the Side signal based on Formula 1 or Formula 2 can be referred to as "upmixing".

[0026] Em alguns casos, o sinal Mid pode se basear em outras fórmulas, tais como: M=(L+gDR)/2 ou Fórmula 3 M = g1L + g2R Fórmula 4[0026] In some cases, the Mid signal may be based on other formulas, such as: M=(L+gDR)/2 or Formula 3 M = g1L + g2R Formula 4

[0027] Onde g1 + g2 = 1,0 e onde gD é um parâmetro de ganho. Em outros exemplos, downmix pode ser realizado em bandas, onde mid(b) = c1L(b) + c2R(b), onde c1 e c2 são números complexos, em que side(b) = c3L(b) - c4R(b) e em que c3 e c4 são números complexos.[0027] Where g1 + g2 = 1.0 and where gD is a gain parameter. In other examples, downmixing can be performed in bands, where mid(b) = c1L(b) + c2R(b), where c1 and c2 are complex numbers, where side(b) = c3L(b) - c4R(b) ) and where c3 and c4 are complex numbers.

[0028] Uma abordagem ad-hoc utilizada para escolher entre codificação MS ou codificação dual-mono para um quadro particular pode incluir gerar um sinal mid e um sinal side, calcular as energias do sinal mid e do sinal side e determinar se a codificação MS deve ser realizada com base nas energias. Por exemplo, a codificação MS pode ser realizada em resposta à determinação de que a relação de energias do sinal side e do sinal mid é menor do que um limite. Para ilustrar, se um canal Direito for desviado por pelo menos uma primeira vez (por exemplo, cerca de 0,001 segundos ou 48 amostras a 48 kHz), uma primeira energia do sinal mid (correspondente à soma do sinal esquerdo e do sinal direito) pode ser comparável a uma segunda energia do sinal side (correspondente a uma diferença entre o sinal esquerdo e o sinal direito) para quadros de voz sonorizada. Quando a primeira energia é comparável à segunda energia, um número maior de bits pode ser utilizado para codificar o sinal side, reduzindo assim a eficiência de codificação da codificação MS em relação à codificação dual-mono. A codificação dual-mono pode, portanto, ser utilizada quando a primeira energia é comparável à segunda energia (por exemplo, quando a relação da primeira energia e da segunda energia é maior ou igual ao limite). Em uma abordagem alternativa, a decisão entre a codificação MS e a codificação dual-mono para um quadro particular pode ser tomada com base na comparação de um limite e valores de correlação cruzada normalizados do canal Esquerdo e do canal Direito.[0028] An ad-hoc approach used to choose between MS encoding or dual-mono encoding for a particular frame may include generating a mid signal and a side signal, calculating the energies of the mid signal and the side signal, and determining whether the MS encoding must be performed based on the energies. For example, MS encoding can be performed in response to a determination that the ratio of energies of the side signal and the mid signal is less than a threshold. To illustrate, if a Right channel is shifted for at least the first time (for example, about 0.001 seconds or 48 samples at 48 kHz), a first energy of the mid signal (corresponding to the sum of the left signal and the right signal) can be comparable to a second side signal energy (corresponding to a difference between the left signal and the right signal) for voiced speech frames. When the first energy is comparable to the second energy, a larger number of bits can be used to encode the side signal, thus reducing the coding efficiency of MS encoding compared to dual-mono encoding. Dual-mono encoding can therefore be used when the first energy is comparable to the second energy (for example, when the ratio of the first energy and the second energy is greater than or equal to the threshold). In an alternative approach, the decision between MS encoding and dual-mono encoding for a particular frame can be made based on comparing a threshold and normalized cross-correlation values of the Left channel and the Right channel.

[0029] Em alguns exemplos, o codificador pode determinar um valor de incompatibilidade indicativo de uma quantidade de desalinhamento temporal entre o primeiro sinal de áudio e o segundo sinal de áudio. Conforme utilizado neste documento, um "valor de desvio temporal", um "valor de desvio" e um "valor de incompatibilidade" podem ser utilizados de forma intercambiável. Por exemplo, o codificador pode determinar um valor de desvio temporal indicativo de um desvio (por exemplo, a incompatibilidade temporal) do primeiro sinal de áudio em relação ao segundo sinal de áudio. O valor de incompatibilidade temporal pode corresponder a uma quantidade de retardo temporal entre o recebimento do primeiro sinal de áudio no primeiro microfone e o recebimento do segundo sinal de áudio no segundo microfone. Além disso, o codificador pode determinar o valor de incompatibilidade temporal em uma base quadro a quadro, por exemplo, com base em cada quadro de fala/áudio de 20 milissegundos (ms). Por exemplo, o valor de incompatibilidade temporal pode corresponder a uma quantidade de tempo em que um segundo quadro do segundo sinal de áudio é retardado em relação a um primeiro quadro do primeiro sinal de áudio. Alternativamente, o valor de incompatibilidade temporal pode corresponder a uma quantidade de tempo em que o primeiro quadro do primeiro sinal de áudio é retardado em relação ao segundo quadro do segundo sinal de áudio.[0029] In some examples, the encoder may determine a mismatch value indicative of an amount of temporal misalignment between the first audio signal and the second audio signal. As used in this document, a "time skew value", a "skew value", and a "mismatch value" may be used interchangeably. For example, the encoder may determine a time offset value indicative of a shift (e.g. time mismatch) of the first audio signal relative to the second audio signal. The time mismatch value can correspond to an amount of time delay between receiving the first audio signal at the first microphone and receiving the second audio signal at the second microphone. In addition, the encoder can determine the time mismatch value on a frame-by-frame basis, for example, based on each 20 millisecond (msec) speech/audio frame. For example, the time mismatch value can correspond to an amount of time that a second frame of the second audio signal is delayed relative to a first frame of the first audio signal. Alternatively, the time mismatch value may correspond to an amount of time that the first frame of the first audio signal is delayed with respect to the second frame of the second audio signal.

[0030] Quando a fonte de som está mais próxima do primeiro microfone do que do segundo microfone, os quadros do segundo sinal de áudio podem ser retardados em relação aos quadros do primeiro sinal de áudio. Nesse caso, o primeiro sinal de áudio pode ser referido como "sinal de áudio de referência" ou "canal de referência" e o segundo sinal de áudio retardado pode ser referido como "sinal de áudio alvo" ou "canal alvo". Alternativamente, quando a fonte de som está mais próxima do segundo microfone do que do primeiro microfone, os quadros do primeiro sinal de áudio podem ser retardados em relação aos quadros do segundo sinal de áudio. Nesse caso, o segundo sinal de áudio pode ser referido como o sinal de áudio de referência ou canal de referência e o primeiro sinal de áudio retardado pode ser referido como sinal de áudio alvo ou canal alvo.[0030] When the sound source is closer to the first microphone than the second microphone, the frames of the second audio signal may be delayed with respect to the frames of the first audio signal. In that case, the first audio signal can be referred to as "reference audio signal" or "reference channel" and the second delayed audio signal can be referred to as "target audio signal" or "target channel". Alternatively, when the sound source is closer to the second microphone than the first microphone, the frames of the first audio signal may be delayed relative to the frames of the second audio signal. In that case, the second audio signal may be referred to as the reference audio signal or reference channel and the first delayed audio signal may be referred to as the target audio signal or target channel.

[0031] Dependendo de onde as fontes de som (por exemplo, locutores) estão localizadas em uma sala de conferência ou telepresença ou de como a posição da fonte de som (por exemplo, locutor) muda em relação aos microfones, o canal de referência e o canal alvo podem mudar de um quadro para outro; de forma similar, o valor do retardo temporal pode também mudar de um quadro para outro. No entanto, em algumas implementações, o valor de incompatibilidade temporal pode sempre ser positivo para indicar uma quantidade de retardo do canal "alvo" em relação ao canal "de referência". Além disso, o valor de incompatibilidade temporal pode corresponder a um valor de "desvio não causal" pelo qual o canal alvo retardado é "puxado" no tempo, de modo que o canal alvo seja alinhado (por exemplo, alinhado de forma máxima) com o canal "de referência". O algoritmo de downmix para determinar o sinal mid e o sinal side pode ser realizado no canal de referência e no canal alvo desviado não causal.[0031] Depending on where the sound sources (eg announcers) are located in a conference or telepresence room or how the position of the sound source (eg announcer) changes in relation to the microphones, the reference channel and target channel can change from one frame to another; similarly, the time delay value can also change from one frame to another. However, in some implementations, the time mismatch value can always be positive to indicate an amount of delay of the "target" channel relative to the "reference" channel. Furthermore, the time mismatch value may correspond to a "non-causal deviation" value by which the delayed target channel is "pulled" in time such that the target channel is aligned (e.g., maximally aligned) with the "reference" channel. The downmix algorithm for determining the mid signal and the side signal can be performed on the reference channel and the non-causal bypassed target channel.

[0032] O codificador pode determinar o valor de incompatibilidade temporal com base no canal de áudio de referência e uma pluralidade de valores de incompatibilidade temporal aplicados ao canal de áudio alvo. Por exemplo, um primeiro quadro do canal de áudio de referência, X, pode ser recebido em um primeiro tempo (m1). Um primeiro quadro particular do canal de áudio alvo, Y, pode ser recebido em um segundo tempo (n1) correspondendo a um primeiro valor de incompatibilidade temporal, por exemplo, shift1 = n1 - m1. Além disso, um segundo quadro do canal de áudio de referência pode ser recebido em um terceiro tempo (m2). Um segundo quadro particular do canal de áudio alvo pode ser recebido em um quarto tempo (n2) correspondente a um segundo valor de incompatibilidade temporal, por exemplo, shift2 = n2 - m2.[0032] The encoder can determine the time mismatch value based on the reference audio channel and a plurality of time mismatch values applied to the target audio channel. For example, a first frame from the reference audio channel, X, can be received at a first time (m1). A particular first frame of the target audio channel, Y, can be received at a second time (n1) corresponding to a first time mismatch value, eg shift1 = n1 - m1. Furthermore, a second frame from the reference audio channel can be received at a third time (m2). A second particular frame from the target audio channel can be received at a fourth time (n2) corresponding to a second time mismatch value, eg shift2 = n2 - m2.

[0033] O dispositivo pode realizar um algoritmo de enquadramento ou armazenagem em buffer (buffering) para gerar um quadro (por exemplo, amostras de 20 ms) em uma primeira taxa de amostragem (por exemplo, taxa de amostragem de 32 kHz (isto é, 640 amostras por quadro)). O codificador pode, em resposta à determinação de que um primeiro quadro do primeiro sinal de áudio e um segundo quadro do segundo sinal de áudio cheguem ao mesmo tempo ao dispositivo, estimar um valor de incompatibilidade temporal (por exemplo, shiftl) como igual a zero amostras. Um canal Esquerdo (por exemplo, correspondente ao primeiro sinal de áudio) e um canal Direito (por exemplo, correspondente ao segundo sinal de áudio) podem ser alinhados temporalmente. Em alguns casos, o canal Esquerdo e o canal Direito, mesmo quando alinhados, podem diferir em energia devido a várias razões (por exemplo, calibração do microfone).[0033] The device may perform a framing or buffering algorithm to generate a frame (e.g. 20 ms samples) at a first sample rate (e.g. 32 kHz sample rate (i.e. , 640 samples per frame)). The encoder may, in response to determining that a first frame of the first audio signal and a second frame of the second audio signal arrive at the device at the same time, estimate a time mismatch value (e.g., shiftl) as equal to zero samples. A Left channel (eg corresponding to the first audio signal) and a Right channel (eg corresponding to the second audio signal) can be time-aligned. In some cases, the Left channel and the Right channel, even when aligned, may differ in energy due to various reasons (eg microphone calibration).

[0034] Em alguns exemplos, o canal Esquerdo e o canal Direito podem estar desalinhados temporariamente devido a várias razões (por exemplo, uma fonte de som, tal como um locutor, pode estar mais próxima de um dos microfones do que do outro e os dois microfones podem ser maiores que um limite (por exemplo, 1 - 20 centímetros) de distância). Uma localização da fonte de som em relação aos microfones pode introduzir diferentes retardos no canal Esquerdo e no canal Direito. Além disso, pode haver uma diferença de ganho, uma diferença de energia ou uma diferença de nível entre o canal Esquerdo e o canal Direito.[0034] In some examples, the Left channel and the Right channel may be temporarily misaligned due to various reasons (for example, a sound source, such as a speaker, may be closer to one of the microphones than the other and the two microphones can be greater than a limit (eg 1 - 20 centimeters) apart). A location of the sound source relative to the microphones can introduce different delays in the Left and Right channels. Also, there may be a gain difference, a power difference or a level difference between the Left channel and the Right channel.

[0035] Em alguns exemplos, onde existem mais de dois canais, um canal de referência é selecionado inicialmente com base nos níveis ou energias dos canais e posteriormente refinado com base nos valores de incompatibilidade temporal entre diferentes pares de canais, por exemplo, t1(ref, ch2), t2(ref, ch3), t3(ref, ch4), ... t3(ref, chN), onde ch1 é o canal ref inicialmente e t1(.), t2(.), etc. são as funções para estimar os valores de incompatibilidade. Se todos os valores de incompatibilidade temporal forem positivos, então ch1 será tratado como o canal de referência. Se algum dos valores de incompatibilidade for um valor negativo, então o canal de referência será reconfigurado para o canal que foi associado com um valor de incompatibilidade que resultou em um valor negativo e o processo acima continuará até que a melhor seleção (por exemplo, com base no número máximo decorrelacionado maximamente de sinais side) do canal de referência seja alcançada. Uma histerese pode ser utilizada para superar quaisquer variações repentinas na seleção do canal de referência.[0035] In some examples, where there are more than two channels, a reference channel is initially selected based on the levels or energies of the channels and later refined based on the time mismatch values between different pairs of channels, for example, t1( ref, ch2), t2(ref, ch3), t3(ref, ch4), ... t3(ref, chN), where ch1 is the ref channel initially and t1(.), t2(.), etc. are the functions for estimating the mismatch values. If all time mismatch values are positive, then ch1 is treated as the reference channel. If any of the mismatch values are a negative value, then the reference channel will be reset to the channel that was associated with a mismatch value that resulted in a negative value, and the above process will continue until the best selection (e.g. with based on the maximum number of maximally decorrelated side signals) of the reference channel is reached. A hysteresis can be used to overcome any sudden variations in the reference channel selection.

[0036] Em alguns exemplos, o tempo de chegada dos sinais de áudio aos microfones a partir de várias fontes de som (por exemplo, locutores) pode variar quando os múltiplos locutores estão falando alternativamente (por exemplo, sem sobreposição). Nesse caso, o codificador pode ajustar dinamicamente um valor de incompatibilidade temporal com base no locutor para identificar o canal de referência. Em alguns outros exemplos, os múltiplos locutores podem estar falando ao mesmo tempo, o que pode resultar em valores variáveis de incompatibilidade temporal, dependendo de qual locutor está falando mais alto, mais próximo do microfone, etc. Nesse caso, a identificação dos canais de referência e alvo pode se basear nos valores variáveis de desvio temporal no quadro atual e nos valores estimados de incompatibilidade temporal nos quadros anteriores, e com base na energia ou na evolução temporal do primeiro sinal de áudio e do segundo sinal de áudio.[0036] In some instances, the arrival time of audio signals to microphones from multiple sound sources (eg, speakers) may vary when multiple speakers are speaking alternately (eg, without overlapping). In this case, the encoder can dynamically adjust a speaker-based time mismatch value to identify the reference channel. In some other examples, multiple speakers may be speaking at the same time, which may result in varying amounts of time mismatch, depending on which speaker is speaking loudest, closest to the microphone, etc. In this case, the identification of the reference and target channels can be based on the variable values of temporal deviation in the current frame and the estimated values of temporal mismatch in the previous frames, and based on the energy or the temporal evolution of the first audio signal and the second audio signal.

[0037] Em alguns exemplos, o primeiro sinal de áudio e o segundo sinal de áudio podem ser sintetizados ou gerados artificialmente quando os dois sinais mostram potencialmente menos (por exemplo, nenhuma) correlação. Deve ser entendido que os exemplos descritos neste documento são ilustrativos e podem ser instrutivos na determinação de uma relação entre o primeiro sinal de áudio e o segundo sinal de áudio em situações similares ou diferentes.[0037] In some examples, the first audio signal and the second audio signal may be synthesized or artificially generated when the two signals potentially show less (eg, no) correlation. It should be understood that the examples described in this document are illustrative and may be instructive in determining a relationship between the first audio signal and the second audio signal in similar or different situations.

[0038] O codificador pode gerar valores de comparação (por exemplo, valores de diferença ou valores de correlação cruzada) com base na comparação de um primeiro quadro do primeiro sinal de áudio e uma pluralidade de quadros do segundo sinal de áudio. Cada quadro dentre a pluralidade de quadros pode corresponder a um valor de incompatibilidade temporal particular. O codificador pode gerar um primeiro valor estimado de incompatibilidade temporal com base nos valores de comparação. Por exemplo, o primeiro valor estimado de incompatibilidade temporal pode corresponder a um valor de comparação indicando uma similaridade temporal mais alta (ou menor diferença) entre o primeiro quadro do primeiro sinal de áudio e o primeiro quadro do segundo sinal de áudio correspondente.[0038] The encoder can generate comparison values (e.g., difference values or cross-correlation values) based on comparing a first frame of the first audio signal and a plurality of frames of the second audio signal. Each frame of the plurality of frames may correspond to a particular time mismatch value. The encoder can generate a first estimated time mismatch value based on the comparison values. For example, the first estimated time mismatch value may correspond to a comparison value indicating a higher temporal similarity (or lesser difference) between the first frame of the first audio signal and the first frame of the corresponding second audio signal.

[0039] O codificador pode determinar um valor final de incompatibilidade temporal refinando, em vários estágios, uma série de valores estimados de incompatibilidade temporal. Por exemplo, o codificador pode primeiro estimar um valor de incompatibilidade temporal de "tentativa" com base nos valores de comparação gerados a partir de versões estereofônicas pré-processadas e reamostradas do primeiro sinal de áudio e do segundo sinal de áudio. O codificador pode gerar valores de comparação interpolados associados com valores de incompatibilidade temporal próximos ao valor estimado de incompatibilidade temporal de "tentativa". O codificador pode determinar um segundo valor estimado de incompatibilidade temporal "interpolado" com base nos valores de comparação interpolados. Por exemplo, o segundo valor estimado de incompatibilidade temporal "interpolado" pode corresponder a um valor de comparação interpolado particular que indica uma similaridade temporal mais alta (ou menor diferença) do que os valores de comparação interpolados restantes e o primeiro valor estimado de incompatibilidade temporal de “tentativa”. Se o segundo valor estimado de incompatibilidade temporal "interpolado" do quadro atual (por exemplo, o primeiro quadro do primeiro sinal de áudio) for diferente do valor final de incompatibilidade temporal de um quadro anterior (por exemplo, um quadro do primeiro sinal de áudio que precede o primeiro quadro), então o valor de incompatibilidade temporal "interpolado" do quadro atual é "alterado" para melhorar a similaridade temporal entre o primeiro sinal de áudio e o segundo sinal de áudio desviado. Em particular, um terceiro valor estimado de incompatibilidade temporal "alterado" pode corresponder a uma medida mais precisa da similaridade temporal ao pesquisar em torno do segundo valor estimado de incompatibilidade temporal "interpolado" do quadro atual e o valor estimado de incompatibilidade temporal final do quadro anterior. O terceiro valor estimado de incompatibilidade temporal "alterado" está adicionalmente condicionado a estimar o valor de incompatibilidade temporal final ao limitar quaisquer alterações espúrias no valor de incompatibilidade temporal entre os quadros e adicionalmente controlado para não passar de um valor de incompatibilidade temporal negativo para um valor de incompatibilidade temporal positivo (ou vice-versa) em dois quadros sucessivos (ou consecutivos) conforme descrito neste documento.[0039] The encoder can determine a final time mismatch value by refining, in several stages, a series of estimated time mismatch values. For example, the encoder may first estimate a "trial" time mismatch value based on the comparison values generated from preprocessed and resampled stereophonic versions of the first audio signal and the second audio signal. The encoder can generate interpolated comparison values associated with time mismatch values close to the estimated "attempt" time mismatch value. The encoder may determine a second "interpolated" estimated time mismatch value based on the interpolated comparison values. For example, the second "interpolated" estimated time mismatch value may correspond to a particular interpolated comparison value that indicates a higher temporal similarity (or lower difference) than the remaining interpolated comparison values and the first estimated time mismatch value of "attempt". If the second "interpolated" estimated time mismatch value of the current frame (for example, the first frame of the first audio signal) differs from the final time mismatch value of a previous frame (for example, a frame of the first audio signal preceding the first frame), then the "interpolated" time mismatch value of the current frame is "shifted" to improve the temporal similarity between the first audio signal and the second skewed audio signal. In particular, a third "shifted" estimated time mismatch value can correspond to a more accurate measure of temporal similarity by searching around the second "interpolated" estimated time mismatch value of the current frame and the final estimated time mismatch value of the frame. previous. The third "changed" estimated time mismatch value is further conditioned to estimate the final time mismatch value by limiting any spurious changes in the time mismatch value between frames and further controlled not to go from a negative time mismatch value to a value of positive time mismatch (or vice versa) in two successive (or consecutive) frames as described in this document.

[0040] Em alguns exemplos, o codificador pode abster-se de alternar entre um valor de incompatibilidade temporal positivo e um valor de incompatibilidade temporal negativo ou vice-versa em quadros consecutivos ou em quadros adjacentes. Por exemplo, o codificador pode definir o valor de incompatibilidade temporal final para um valor particular (por exemplo, 0) indicando que não há desvio temporal com base no valor estimado de incompatibilidade temporal "interpolado" ou "alterado" do primeiro quadro e um correspondente valor estimado de incompatibilidade temporal "interpolado" ou "alterado" ou final em um quadro particular que precede o primeiro quadro. Para ilustrar, o codificador pode definir o valor final de incompatibilidade temporal do quadro atual (por exemplo, o primeiro quadro) para indicar nenhum desvio temporal, ou seja, shift1 = 0, em resposta à determinação de que um dentre os valores estimados de incompatibilidade temporal de "tentativa" ou "interpolado" ou “alterado" do quadro atual é positivo e o outro dentre os valores estimados de incompatibilidade temporal de "tentativa" ou "interpolado" ou "alterado" ou "final" do quadro anterior (por exemplo, o quadro antecedendo ao primeiro quadro) é negativo. Como alternativa, o codificador pode também definir o valor de incompatibilidade temporal final do quadro atual (por exemplo, o primeiro quadro) para indicar nenhum desvio temporal, isto é, shift1 = 0, em resposta à determinação de que um dentre os valores estimados de incompatibilidade temporal de "tentativa" ou “interpolado" ou "alterado" do quadro atual é negativo e o outro dentre os valores estimados de incompatibilidade temporal de "tentativa" ou "interpolado" ou "alterado" ou "final" do quadro anterior (por exemplo, o quadro antecedendo ao primeiro quadro) é positivo.[0040] In some examples, the encoder may refrain from switching between a positive time mismatch value and a negative time mismatch value or vice versa in consecutive frames or in adjacent frames. For example, the encoder can set the final time mismatch value to a particular value (e.g., 0) indicating that there is no time mismatch based on the estimated "interpolated" or "shifted" time mismatch value of the first frame and a corresponding estimated "interpolated" or "shifted" or final time mismatch value at a particular frame preceding the first frame. To illustrate, the encoder can set the final time-mismatch value of the current frame (for example, the first frame) to indicate no time-shift, that is, shift1 = 0, in response to determining that one of the estimated time-mismatch values "attempted" or "interpolated" or "changed" temporal mismatch of the current frame is positive and the other one of the estimated time mismatch values of "attempted" or "interpolated" or "changed" or "final" from the previous frame (e.g. , the frame preceding the first frame) is negative. Alternatively, the encoder can also set the final time mismatch value of the current frame (e.g., the first frame) to indicate no time shift, i.e., shift1 = 0, in response to determining that one of the current frame's estimated time mismatch values of "attempted" or "interpolated" or "changed" is negative and the other of the estimated time mismatch values of "attempted" or "interpolated" or " changed" or "end" of the previous frame (for example, the frame before the first frame) is positive.

[0041] O codificador pode selecionar um quadro do primeiro sinal de áudio ou do segundo sinal de áudio como uma "referência" ou um "alvo" com base no valor de incompatibilidade temporal. Por exemplo, em resposta à determinação de que o valor de incompatibilidade temporal final é positivo, o codificador pode gerar um canal de referência ou indicador de sinal tendo um primeiro valor (por exemplo, 0) indicando que o primeiro sinal de áudio é um sinal "de referência" e que o segundo sinal de áudio é o sinal "alvo". Alternativamente, em resposta à determinação de que o valor de incompatibilidade temporal final é negativo, o codificador pode gerar o canal de referência ou o indicador de sinal tendo um segundo valor (por exemplo, 1) indicando que o segundo sinal de áudio é o sinal "de referência" e que o primeiro sinal de áudio é o sinal "alvo".[0041] The encoder can select a frame of the first audio signal or the second audio signal as a "reference" or a "target" based on the time mismatch value. For example, in response to determining that the final time mismatch value is positive, the encoder can generate a reference channel or signal indicator having a first value (e.g., 0) indicating that the first audio signal is a signal. "reference" and that the second audio signal is the "target" signal. Alternatively, in response to determining that the final time mismatch value is negative, the encoder may generate the reference channel or signal indicator having a second value (e.g., 1) indicating that the second audio signal is the signal "reference" and that the first audio signal is the "target" signal.

[0042] O codificador pode estimar um ganho relativo (por exemplo, um parâmetro de ganho relativo) associado com o sinal de referência e com o sinal alvo desviado não causal. Por exemplo, em resposta à determinação de que o valor de incompatibilidade temporal final é positivo, o codificador pode estimar um valor de ganho para normalizar ou equalizar os níveis de potência ou amplitude do primeiro sinal de áudio em relação ao segundo sinal de áudio que é deslocado pelo valor de incompatibilidade temporal não causal (por exemplo, um valor absoluto do valor de incompatibilidade temporal final). Alternativamente, em resposta à determinação de que o valor de incompatibilidade temporal final é negativo, o codificador pode estimar um valor de ganho para normalizar ou equalizar os níveis de potência ou amplitude do primeiro sinal de áudio desviado não causal em relação ao segundo sinal de áudio. Em alguns exemplos, o codificador pode estimar um valor de ganho para normalizar ou equalizar os níveis de amplitude ou potência do sinal "de referência" em relação ao sinal "alvo" desviado não causal. Em outros exemplos, o codificador pode estimar o valor de ganho (por exemplo, um valor de ganho relativo) com base no sinal de referência em relação ao sinal alvo (por exemplo, o sinal alvo não desviado).[0042] The encoder can estimate a relative gain (eg, a relative gain parameter) associated with the reference signal and with the noncausal deviated target signal. For example, in response to determining that the final time mismatch value is positive, the encoder can estimate a gain value to normalize or equalize the power or amplitude levels of the first audio signal relative to the second audio signal that is shifted by the noncausal time mismatch value (for example, an absolute value of the final time mismatch value). Alternatively, in response to the determination that the final time mismatch value is negative, the encoder may estimate a gain value to normalize or equalize the power or amplitude levels of the non-causally shifted first audio signal relative to the second audio signal. . In some examples, the encoder may estimate a gain value to normalize or equalize the amplitude or power levels of the "reference" signal relative to the non-causally deviated "target" signal. In other examples, the encoder can estimate the gain value (eg, a relative gain value) based on the reference signal relative to the target signal (eg, the unshifted target signal).

[0043] O codificador pode gerar pelo menos um sinal codificado (por exemplo, um sinal mid, um sinal side ou ambos) com base no sinal de referência, no sinal alvo, no valor de incompatibilidade temporal não causal e no parâmetro de ganho relativo. Em outras implementações, o codificador pode gerar pelo menos um sinal codificado (por exemplo, um sinal mid, um sinal side ou ambos) com base no canal de referência e no canal alvo ajustado de incompatibilidade temporal. O sinal side pode corresponder a uma diferença entre as primeiras amostras do primeiro quadro do primeiro sinal de áudio e as amostras selecionadas de um quadro selecionado do segundo sinal de áudio. O codificador pode selecionar o quadro selecionado com base no valor de incompatibilidade temporal final. Menos bits podem ser utilizados para codificar o sinal side devido à diferença reduzida entre as primeiras amostras e as amostras selecionadas em comparação com outras amostras do segundo sinal de áudio que correspondem a um quadro do segundo sinal de áudio que é recebido pelo dispositivo no mesmo tempo que o primeiro quadro. Um transmissor do dispositivo pode transmitir pelo menos um sinal codificado, o valor de incompatibilidade temporal não causal, o parâmetro de ganho relativo, o canal de referência ou indicador de sinal ou uma combinação dos mesmos.[0043] The encoder can generate at least one encoded signal (for example, a mid signal, a side signal, or both) based on the reference signal, the target signal, the non-causal time mismatch value, and the relative gain parameter . In other implementations, the encoder may generate at least one encoded signal (for example, a mid signal, a side signal, or both) based on the reference channel and the time mismatch adjusted target channel. The side signal can correspond to a difference between the first samples of the first frame of the first audio signal and the selected samples of a selected frame of the second audio signal. The encoder can select the selected frame based on the final time mismatch value. Fewer bits can be used to encode the side signal due to the reduced difference between the first samples and the selected samples compared to other samples of the second audio signal that correspond to a frame of the second audio signal that is received by the device at the same time than the first frame. A device transmitter may transmit at least one coded signal, the noncausal time mismatch value, the relative gain parameter, the reference channel or signal indicator, or a combination thereof.

[0044] O codificador pode gerar pelo menos um sinal codificado (por exemplo, um sinal mid, um sinal side ou ambos) com base no sinal de referência, no sinal alvo, no valor de incompatibilidade temporal não causal, no parâmetro de ganho relativo, nos parâmetros de banda baixa de um quadro particular do primeiro sinal de áudio, parâmetros de banda alta do quadro particular ou uma combinação dos mesmos. O quadro particular pode preceder o primeiro quadro. Certos parâmetros de banda baixa, parâmetros de banda alta ou uma combinação dos mesmos, a partir de um ou mais quadros anteriores podem ser utilizados para codificar um sinal mid, um sinal side, ou ambos, do primeiro quadro. A codificação do sinal mid, do sinal side ou de ambos, com base nos parâmetros de banda baixa, nos parâmetros de banda alta ou em uma combinação dos mesmos, pode melhorar as estimativas do valor de incompatibilidade temporal não causal e do parâmetro de ganho relativo inter-canal. Os parâmetros de banda baixa, os parâmetros de banda alta ou uma combinação dos mesmos podem incluir um parâmetro de pitch, um parâmetro de sonoridade, um parâmetro do tipo codificador, um parâmetro de energia de banda baixa, um parâmetro de energia de banda alta, um parâmetro de envelope (por exemplo, um parâmetro de inclinação (tilt)), um parâmetro de ganho de pitch, um parâmetro de ganho FCB, um parâmetro de modo de codificação, um parâmetro de atividade de voz, um parâmetro de estimativa de ruído, um parâmetro de relação sinal/ruído, um parâmetro de formantes, um parâmetro de decisão de fala/música, o desvio não causal, o parâmetro de ganho inter-canal ou uma combinação dos mesmos. Um transmissor do dispositivo pode transmitir pelo menos um sinal codificado, o valor de incompatibilidade temporal não causal, o parâmetro de ganho relativo, o indicador do canal (ou sinal) de referência ou uma combinação dos mesmos. Na presente descrição, termos tais como "determinação", "cálculo", "desvio", "ajuste" etc. podem ser utilizados para descrever como uma ou mais operações são realizadas. Deve ser notado que esses termos não devem ser interpretados como limitantes e outras técnicas podem ser utilizadas para realizar operações similares.[0044] The encoder can generate at least one encoded signal (for example, a mid signal, a side signal, or both) based on the reference signal, the target signal, the non-causal time mismatch value, the relative gain parameter , the lowband parameters of a particular frame of the first audio signal, the highband parameters of the particular frame, or a combination thereof. The private frame can precede the first frame. Certain lowband parameters, highband parameters, or a combination thereof, from one or more previous frames can be used to encode a mid signal, a side signal, or both, from the first frame. Coding the mid signal, the side signal, or both, based on the lowband parameters, the highband parameters, or a combination thereof, can improve estimates of the noncausal time mismatch value and the relative gain parameter inter-channel. Low band parameters, high band parameters or a combination thereof can include a pitch parameter, a loudness parameter, an encoder type parameter, a low band energy parameter, a high band energy parameter, an envelope parameter (for example, a tilt parameter), a pitch gain parameter, an FCB gain parameter, an encoding mode parameter, a voice activity parameter, a noise estimation parameter , a signal-to-noise ratio parameter, a formants parameter, a speech/music decision parameter, the non-causal bias, the inter-channel gain parameter, or a combination thereof. A device transmitter may transmit at least one coded signal, the noncausal time mismatch value, the relative gain parameter, the reference channel (or signal) indicator, or a combination thereof. In the present description, terms such as "determination", "calculation", "deviation", "adjustment" etc. can be used to describe how one or more operations are performed. It should be noted that these terms are not to be construed as limiting and other techniques may be used to perform similar operations.

[0045] Com referência à FIG. 1, é descrito um exemplo ilustrativo particular de um sistema e geralmente designado 100. O sistema 100 inclui um primeiro dispositivo 104 acoplado comunicativamente, através de uma rede 120, a um segundo dispositivo 106. A rede 120 pode incluir uma ou mais redes sem fio, uma ou mais redes cabeadas ou uma combinação das mesmas.[0045] With reference to FIG. 1, a particular illustrative example of a system is depicted and generally designated 100. System 100 includes a first device 104 communicatively coupled via network 120 to a second device 106. Network 120 may include one or more wireless networks , one or more wired networks, or a combination thereof.

[0046] O primeiro dispositivo 104 inclui uma memória 153, um codificador 134, um transmissor 110 e uma ou mais interfaces de entrada 112. A memória 153 inclui um meio legível por computador não transitório que inclui as instruções 191. As instruções 191 são executáveis pelo codificador 134 para realizar uma ou mais dentre as operações descritas neste documento. Uma primeira interface de entrada dentre as interfaces de entrada 112 pode ser acoplada a um primeiro microfone 146. Uma segunda interface de entrada da interface de entrada 112 pode ser acoplada a um segundo microfone 148. O codificador 134 pode incluir um codificador de extensão de largura de banda inter-canal (ICBWE) 136. O codificador ICBWE 136 pode ser configurado para estimar um ou mais parâmetros de mapeamento espectral com base em um canal alvo de banda alta de não referência sintetizada e um de não referência. Por exemplo, o codificador ICBWE 136 pode estimar os parâmetros de mapeamento espectral 188 e obter os parâmetros de mapeamento 190. Os parâmetros de mapeamento espectral 188 e os parâmetros de mapeamento de ganho 190 podem ser referidos como "parâmetros ICBWE". No entanto, para facilitar a descrição, os parâmetros ICBWE podem também ser referidos como "parâmetros".[0046] The first device 104 includes a memory 153, an encoder 134, a transmitter 110 and one or more input interfaces 112. The memory 153 includes a non-transient computer-readable medium that includes the instructions 191. The instructions 191 are executable by encoder 134 to perform one or more of the operations described herein. A first input interface of input interfaces 112 may be coupled to a first microphone 146. A second input interface of input interface 112 may be coupled to a second microphone 148. Encoder 134 may include a width-span encoder Inter-channel Bandwidth (ICBWE) 136. ICBWE encoder 136 may be configured to estimate one or more spectral mapping parameters based on a synthesized non-reference and one non-reference high-band target channel. For example, ICBWE encoder 136 may estimate spectral mapping parameters 188 and obtain mapping parameters 190. Spectral mapping parameters 188 and gain mapping parameters 190 may be referred to as "ICBWE parameters". However, for ease of description, ICBWE parameters may also be referred to as "parameters".

[0047] O segundo dispositivo 106 inclui um receptor 160 e um decodificador 162. O decodificador 162 pode incluir um decodificador de sinal mid de banda alta 164, um decodificador de sinal mid de banda baixa 166, uma unidade de predição residual de banda alta 168, uma unidade de predição residual de banda baixa 170, um processador up- mix 172 e um decodificador ICBWE 174. O decodificador 162 pode também incluir um ou outros mais componentes que não estão ilustrados na FIG. 1. Por exemplo, o decodificador 162 pode incluir uma ou mais unidades de transformada que estão configuradas para transformar um canal no domínio do tempo (por exemplo, um sinal no domínio do tempo) em um domínio da frequência (por exemplo, um domínio de transformada). Detalhes adicionais associados às operações do decodificador 162 são descritos em relação às FIGS. 2 e 3.[0047] The second device 106 includes a receiver 160 and a decoder 162. The decoder 162 may include a high-band mid signal decoder 164, a low-band mid signal decoder 166, a high-band residual prediction unit 168 , a low-band residual prediction unit 170, an upmix processor 172, and an ICBWE decoder 174. Decoder 162 may also include one or more other components that are not illustrated in FIG. 1. For example, decoder 162 may include one or more transform units that are configured to transform a time domain channel (e.g., a time domain signal) into a frequency domain (e.g., a signal domain). transformed). Additional details associated with the operations of decoder 162 are described with reference to FIGS. 2 and 3.

[0048] O segundo dispositivo 106 pode ser acoplado a um primeiro alto-falante 142, um segundo alto- falante 144 ou a ambos. Embora não mostrado, o segundo dispositivo 106 pode incluir outros componentes, tais como um processador (por exemplo, unidade central de processamento), um microfone, um transmissor, uma antena, uma memória, etc.[0048] The second device 106 can be coupled to a first speaker 142, a second speaker 144 or both. Although not shown, the second device 106 may include other components such as a processor (e.g., central processing unit), a microphone, a transmitter, an antenna, a memory, and the like.

[0049] Durante a operação, o primeiro dispositivo 104 pode receber um primeiro canal de áudio 130 (por exemplo, um primeiro sinal de áudio) através da primeira interface de entrada do primeiro microfone 146 e pode receber um segundo canal de áudio 132 (por exemplo, um segundo sinal de áudio) através da segunda interface de entrada do segundo microfone 148. O primeiro canal de áudio 130 pode corresponder a um canal direito ou a um canal esquerdo. O segundo canal de áudio 132 pode corresponder ao outro entre o canal direito ou o canal esquerdo. Uma fonte de som 152 (por exemplo, um usuário, um speaker, ruído de ambiente, um instrumento musical, etc.) pode estar mais perto do primeiro microfone 146 do que do segundo microfone 148. Por conseguinte, um sinal de áudio a partir da fonte de som 152 pode ser recebido nas interfaces de entrada 112 através do primeiro microfone 146 em um tempo anterior ao tempo do segundo microfone 148. Este retardo natural na aquisição de sinal multicanal através dos múltiplos microfones pode introduzir um desalinhamento temporal entre o primeiro canal de áudio 130 e o segundo canal de áudio 132.[0049] During operation, the first device 104 can receive a first audio channel 130 (for example, a first audio signal) through the first input interface of the first microphone 146 and can receive a second audio channel 132 (for example, a example, a second audio signal) through the second input interface of the second microphone 148. The first audio channel 130 can correspond to a right channel or a left channel. The second audio channel 132 can correspond to the other between the right channel or the left channel. A sound source 152 (e.g., a user, a speaker, ambient noise, a musical instrument, etc.) may be closer to the first microphone 146 than the second microphone 148. Therefore, an audio signal from of the sound source 152 can be received at the input interfaces 112 through the first microphone 146 at a time earlier than the time of the second microphone 148. This natural delay in multichannel signal acquisition through the multiple microphones can introduce a temporal misalignment between the first channel audio channel 130 and the second audio channel 132.

[0050] De acordo com uma implementação, o primeiro canal de áudio 130 pode ser um "canal de referência" e o segundo canal de áudio 132 pode ser um "canal alvo". O canal alvo pode ser ajustado (por exemplo, desviado temporalmente) para se alinhar substancialmente com o canal de referência. De acordo com outra implementação, o segundo canal de áudio 132 pode ser o canal de referência e o primeiro canal de áudio 130 pode ser o canal alvo. De acordo com uma implementação, o canal de referência e o canal alvo podem variar em uma base de quadro a quadro. Por exemplo, para um primeiro quadro, o primeiro canal de áudio 130 pode ser o canal de referência e o segundo canal de áudio 132 pode ser o canal alvo. No entanto, para um segundo quadro (por exemplo, um quadro subsequente), o primeiro canal de áudio 130 pode ser o canal alvo e o segundo canal de áudio 132 pode ser o canal de referência. Para facilitar a descrição, a menos que indicado de outra forma abaixo, o primeiro canal de áudio 130 é o canal de referência e o segundo canal de áudio 132 é o canal alvo. Deve ser notado que o canal de referência descrito em relação aos canais de áudio 130, 132 pode ser independente de um indicador de canal de referência 192 (por exemplo, um indicador de canal de referência de banda alta). Por exemplo, o indicador de canal de referência 192 pode indicar que uma banda alta de qualquer um entre os canais 130, 132 é o canal de referência de banda alta e o indicador de canal de referência 192 pode indicar um canal de referência de banda alta que pode ser o mesmo canal ou um canal diferente do canal de referência.[0050] According to an implementation, the first audio channel 130 can be a "reference channel" and the second audio channel 132 can be a "target channel". The target channel can be adjusted (e.g., time shifted) to substantially align with the reference channel. According to another implementation, the second audio channel 132 can be the reference channel and the first audio channel 130 can be the target channel. According to an implementation, the reference channel and the target channel may vary on a frame-by-frame basis. For example, for a first frame, the first audio channel 130 could be the reference channel and the second audio channel 132 could be the target channel. However, for a second frame (e.g., a subsequent frame), first audio channel 130 may be the target channel and second audio channel 132 may be the reference channel. For ease of description, unless otherwise noted below, first audio channel 130 is the reference channel and second audio channel 132 is the target channel. It should be noted that the reference channel described in relation to the audio channels 130, 132 may be independent of a reference channel indicator 192 (e.g., a high-band reference channel indicator). For example, the reference channel indicator 192 may indicate that a highband of any one of channels 130, 132 is the highband reference channel, and the reference channel indicator 192 may indicate a highband reference channel. which can be the same channel or a different channel from the reference channel.

[0051] O codificador 134 pode gerar um sinal mid, um sinal side ou ambos, com base no primeiro canal de áudio 130 e no segundo canal de áudio 132 utilizando as técnicas descritas acima com relação às Fórmulas 1 a 4. O codificador 134 pode codificar o sinal mid para gerar o sinal mid codificado 182. O codificador 134 pode também gerar parâmetros 184 (por exemplo, parâmetros ICBWE, parâmetros estéreo ou ambos). Por exemplo, o codificador 134 pode gerar um ganho de predição residual 186 (por exemplo, um ganho de sinal side) e o indicador do canal de referência 192. O indicador de canal de referência 192 pode indicar, em uma base quadro a quadro, se o canal de referência é o canal esquerdo ou o canal direito. O codificador ICBWE 136 pode gerar parâmetros de mapeamento espectral 188 e parâmetros de mapeamento de ganho 190. Os parâmetros de mapeamento espectral 188 mapeiam o espectro (ou energias) de um canal de banda alta de não referência para o espectro de um canal de banda alta de não referência sintetizado. Os parâmetros de mapeamento de ganho 190 podem mapear o ganho do canal de banda alta sem referência ao ganho do canal de banda alta de não referência sintetizado.[0051] The encoder 134 can generate a mid signal, a side signal or both, based on the first audio channel 130 and the second audio channel 132 using the techniques described above with respect to Formulas 1 to 4. The encoder 134 can encode the mid signal to generate encoded mid signal 182. Encoder 134 may also generate parameters 184 (e.g., ICBWE parameters, stereo parameters, or both). For example, encoder 134 may generate a residual prediction gain 186 (e.g., a side signal gain) and reference channel indicator 192. Reference channel indicator 192 may indicate, on a frame-by-frame basis, whether the reference channel is the left channel or the right channel. ICBWE encoder 136 can generate spectral mapping parameters 188 and gain mapping parameters 190. Spectral mapping parameters 188 maps the spectrum (or energies) of a high-band non-reference channel to the spectrum of a high-band channel of synthesized non-reference. Gain mapping parameters 190 can map the gain of the non-reference highband channel to the gain of the synthesized non-reference highband channel.

[0052] O transmissor 110 pode transmitir o fluxo de bits 180, através da rede 120, para o segundo dispositivo 106. O fluxo de bits 180 inclui pelo menos o sinal mid codificado 182 e os parâmetros 184. De acordo com outras implementações, o fluxo de bits 180 pode incluir canais codificados adicionais (por exemplo, um sinal side codificado) e parâmetros estéreo adicionais (por exemplo, parâmetros de diferença de intensidade inter-canal (IID), parâmetros de diferenças de nível inter-canal (ILD), parâmetros diferença de tempo inter-canal (ITD), parâmetros de diferença de fase inter-canal (IPD), parâmetros de sonorização inter-canal, parâmetros de pitch inter-canal, parâmetros de ganho inter-canal, etc.).[0052] The transmitter 110 may transmit the bit stream 180, over the network 120, to the second device 106. The bit stream 180 includes at least the encoded mid signal 182 and the parameters 184. According to other implementations, the bit stream 180 can include additional encoded channels (e.g. a side encoded signal) and additional stereo parameters (e.g. inter-channel intensity difference (IID) parameters, inter-channel level difference (ILD) parameters, inter-channel time difference (ITD) parameters, inter-channel phase difference (IPD) parameters, inter-channel sonification parameters, inter-channel pitch parameters, inter-channel gain parameters, etc.).

[0053] O receptor 160 do segundo dispositivo 106 pode receber o fluxo de bits 180 e o decodificador 162 decodifica o fluxo de bits 180 para gerar um primeiro canal (por exemplo, um canal esquerdo 126) e um segundo canal (por exemplo, um canal direito 128). O segundo dispositivo 106 pode emitir o canal esquerdo 126 através do primeiro alto-falante 142 e pode emitir o canal direito 128 através do segundo alto-falante 144. Em exemplos alternativos, o canal esquerdo 126 e o canal direito 128 podem ser transmitidos como um par de sinais estéreos para um único alto-falante de saída. As operações do decodificador 162 são descritas em mais detalhes em relação às FIGS. 2 a 3.[0053] The receiver 160 of the second device 106 can receive the bitstream 180 and the decoder 162 decodes the bitstream 180 to generate a first channel (for example, a left channel 126) and a second channel (for example, a right channel 128). The second device 106 can output the left channel 126 through the first speaker 142 and can output the right channel 128 through the second speaker 144. In alternative examples, the left channel 126 and the right channel 128 can be transmitted as one pair of stereo signals to a single speaker output. The operations of decoder 162 are described in more detail with reference to FIGS. 2 to 3.

[0054] Com referência à FIG. 2, é mostrada uma implementação particular do decodificador 162. O decodificador 162 inclui o decodificador de sinal mid de banda alta 164, o decodificador de sinal mid de banda baixa 166, a unidade de predição residual de banda alta 168, a unidade de predição residual de banda baixa 170, o processador up-mix 172, o decodificador ICBWE 174, uma unidade de transformada 202, uma unidade de transformada 204, um circuito de combinação 206 e um circuito de combinação 208.[0054] With reference to FIG. 2, a particular implementation of the decoder 162 is shown. The decoder 162 includes the high-band mid signal decoder 164, the low-band mid signal decoder 166, the high-band residual prediction unit 168, the high-band residual prediction unit a low-band 170, an up-mix processor 172, an ICBWE decoder 174, a transform unit 202, a transform unit 204, a combiner circuit 206, and a combiner circuit 208.

[0055] O sinal mid codificado 182 é fornecido ao decodificador de sinal mid de banda alta 164 e ao decodificador de sinal mid de banda baixa 166. O decodificador de sinal mid de banda baixa 166 pode ser configurado para decodificar uma porção de banda baixa do sinal mid codificado 182 para gerar um sinal mid de banda baixa decodificado 212. Como um exemplo não limitativo, se o sinal mid codificado 182 for um sinal de Banda Super Larga tendo conteúdo de áudio entre 50 Hz e 16 kHz, a porção de banda baixa do sinal mid codificado 182 pode abranger a partir de 50 Hz a 8 kHz e um a porção de banda alta do sinal mid codificado 182 pode abranger a partir de 8 kHz a 16 kHz. O decodificador de sinal mid de banda baixa 166 pode decodificar a porção de banda baixa (por exemplo, a porção entre 50 Hz e 8 kHz) do sinal mid codificado 182 para gerar o sinal mid de banda baixa decodificado 212. Deve ser entendido que o exemplo acima é apenas para fins ilustrativos e não deve ser interpretado como limitativo. Em outros exemplos, o sinal mid codificado 182 pode ser um sinal de Banda Larga, um sinal de Banda Total (Full-Band), etc. O sinal mid de banda baixa decodificado 212 (por exemplo, um canal no domínio do tempo) é fornecido à unidade de predição residual de banda baixa 170 e a uma unidade de transformada 204.[0055] The encoded mid signal 182 is provided to the high band mid signal decoder 164 and the low band mid signal decoder 166. The low band mid signal decoder 166 may be configured to decode a low band portion of the encoded mid signal 182 to generate a decoded lowband mid signal 212. As a non-limiting example, if the encoded mid signal 182 is a Super Wideband signal having audio content between 50 Hz and 16 kHz, the lowband portion of the encoded mid signal 182 may span from 50 Hz to 8 kHz and a high band portion of the encoded mid signal 182 may span from 8 kHz to 16 kHz. The lowband mid signal decoder 166 can decode the lowband portion (e.g., the portion between 50 Hz and 8 kHz) of the encoded mid signal 182 to generate the decoded lowband mid signal 212. example above is for illustrative purposes only and should not be construed as limiting. In other examples, the encoded mid signal 182 may be a Wideband signal, a Full-Band signal, etc. The decoded lowband mid signal 212 (e.g., a time domain channel) is provided to the lowband residual prediction unit 170 and a transform unit 204.

[0056] A unidade de predição residual de banda baixa 170 pode ser configurada para processar o sinal mid de banda baixa decodificado 212 para gerar um sinal de predição residual de banda baixa 214 (por exemplo, um canal de preenchimento estéreo de banda baixa ou um sinal side de banda baixa predito). O "processo" pode incluir operações de filtragem, operações de processamento não linear, operações de modificação de fase, operações de reamostragem ou operações de escalonamento. Por exemplo, a unidade de predição residual de banda baixa 170 pode incluir um ou mais filtros de decorrelação passa todas (all-pass). A unidade de predição residual de banda baixa 170 pode aplicar os filtros de decorrelação passa todas ao sinal mid de banda baixa decodificado 212 (por exemplo, no sinal de largura de banda de 16 kHz) para gerar (ou "predizer") o sinal de predição residual de banda baixa 214. O sinal de predição residual de banda baixa 214 é fornecido à unidade de transformada 202.[0056] The low-band residual prediction unit 170 may be configured to process the decoded low-band mid signal 212 to generate a low-band residual prediction signal 214 (e.g., a low-band stereo fill channel or a predicted low-band side signal). The "process" may include filtering operations, non-linear processing operations, phase modification operations, resampling operations, or scaling operations. For example, the low-band residual prediction unit 170 may include one or more all-pass decorrelation filters. The low band residual prediction unit 170 can apply the all pass decorrelation filters to the decoded low band mid signal 212 (e.g. in the 16 kHz bandwidth signal) to generate (or "predict") the low band signal. lowband residual prediction 214. Lowband residual prediction signal 214 is provided to transformer unit 202.

[0057] A unidade de transformada 202 pode ser configurada para realizar uma operação de transformada no sinal de predição residual de banda baixa 214 para gerar um sinal de predição residual de banda baixa no domínio da frequência 216. Deve ser notado que, antes da operação de transformada, em algumas implementações, é realizada também uma operação de janelamento que não é mostrada na FIG. 2. A unidade de transformada 202 pode realizar uma análise de Transformada de Fourier Discreta (DFT) no sinal de predição residual de banda baixa 214 para gerar o sinal de predição residual de banda baixa no domínio da frequência 216. O sinal de predição residual de banda baixa do domínio de frequência 216 é fornecido ao processador up-mix 172. A unidade de transformada 204 pode ser configurada para realizar uma operação de transformada no sinal mid de banda baixa decodificado 212 para gerar um sinal mid de banda baixa no domínio da frequência 218. Por exemplo, a unidade de transformada 204 pode realizar uma análise DFT no sinal mid de banda baixa decodificado 212 para gerar o sinal mid de banda baixa no domínio da frequência 218. O sinal mid de banda baixa no domínio da frequência 218 é fornecido ao processador 172.[0057] The transform unit 202 may be configured to perform a transform operation on the low-band residual prediction signal 214 to generate a low-band residual prediction signal in the frequency domain 216. It should be noted that prior to the operation of transform, in some implementations, a windowing operation is also performed which is not shown in FIG. 2. The transform unit 202 may perform a Discrete Fourier Transform (DFT) analysis on the low-band residual prediction signal 214 to generate the low-band residual prediction signal in the frequency domain 216. frequency domain low band 216 is provided to up-mix processor 172. Transformer unit 204 may be configured to perform a transform operation on the decoded low band mid signal 212 to generate a frequency domain low band mid signal 218. For example, the transformer unit 204 may perform a DFT analysis on the decoded lowband mid signal 212 to generate the frequency domain lowband mid signal 218. The frequency domain lowband mid signal 218 is provided to processor 172.

[0058] O processador up-mix 172 pode ser configurado para gerar um canal esquerdo de banda baixa 220 e um canal direito de banda baixa 222 com base no sinal de predição residual de banda baixa no domínio da frequência 216, o sinal mid de banda baixa no domínio da frequência 218 e um ou mais parâmetros 184 recebidos a partir do primeiro dispositivo 104. Por exemplo, o processador up-mix 172 pode realizar uma operação up-mix no sinal mid de banda baixa no domínio da frequência 218 e no sinal de predição residual de banda baixa no domínio da frequência (por exemplo, um sinal side de banda baixa predito no domínio da frequência) para gerar o canal esquerdo de banda baixa 220 e o canal direito de banda baixa 222. Os parâmetros estéreos 184 podem ser utilizados durante a operação up- mix. Por exemplo, o processador up-mix 172 pode aplicar os parâmetros IID, os parâmetros ILD, os parâmetros ITD, os parâmetros IPD, os parâmetros de sonorização inter-canal, os parâmetros de pitch inter-canal e os parâmetros de ganho inter-canal durante a operação up-mix. Além disso, o processador up-mix 172 pode aplicar os ganhos de predição residual 186 ao sinal de predição residual de banda baixa no domínio da frequência em bandas de frequência para determinar o sinal side no decodificador 162. O processador up-mix 172 pode utilizar o indicador de canal de referência 192 para designar o canal esquerdo de banda baixa 220 e o canal direito de banda baixa 222. Por exemplo, o indicador de canal de referência 192 pode indicar se um canal de referência de banda baixa gerado pelo processador up-mix 172 corresponde ao canal esquerdo de banda baixa 220 ou ao canal direito de banda baixa 222. O canal esquerdo de banda baixa 220 é fornecido ao circuito de combinação 206 e o canal direito de banda baixa 222 é fornecido ao circuito de combinação 208. De acordo com algumas implementações, o processador up-mix 172 inclui unidades de transformada inversa (não mostradas) que são configuradas para realizar operações de transformada no canal de referência de banda baixa e em um canal alvo de banda baixa para gerar os canais 220, 222. Por exemplo, as unidades de transformada inversa podem aplicar operações DFT inversas nos canais de referência de banda baixa e nos canais alvo de banda baixa para gerar os canais no domínio do tempo 220, 222.[0058] The up-mix processor 172 can be configured to generate a low-band left channel 220 and a low-band right channel 222 based on the low-band residual prediction signal in the frequency domain 216, the mid-band signal frequency domain 218 and one or more parameters 184 received from the first device 104. For example, the up-mix processor 172 may perform an up-mix operation on the low-band mid signal in the frequency domain 218 and the frequency domain residual low-band prediction signal (e.g., a frequency-domain predicted low-band side signal) to generate the low-band left channel 220 and the low-band right channel 222. The stereo parameters 184 may be used during the up-mix operation. For example, the up-mix processor 172 can apply the IID parameters, the ILD parameters, the ITD parameters, the IPD parameters, the inter-channel sonification parameters, the inter-channel pitch parameters and the inter-channel gain parameters during the up-mix operation. Furthermore, the up-mix processor 172 can apply the residual prediction gains 186 to the low-band residual prediction signal in the frequency domain in frequency bands to determine the side signal in the decoder 162. The up-mix processor 172 can use the reference channel indicator 192 to designate the lowband left channel 220 and the lowband right channel 222. For example, the reference channel indicator 192 can indicate whether a lowband reference channel generated by the upstream processor mix 172 corresponds to lowband left channel 220 or lowband right channel 222. Lowband left channel 220 is supplied to blending circuit 206 and lowband right channel 222 is supplied to blending circuit 208. According to some implementations, the up-mix processor 172 includes inverse transform units (not shown) that are configured to perform transform operations on the lowband reference channel and on a lowband target channel to generate channels 220, 222 For example, inverse transform units can apply inverse DFT operations on the lowband reference channels and lowband target channels to generate time domain channels 220, 222.

[0059] O decodificador de sinal mid de banda alta 164 pode ser configurado para decodificar a porção de banda alta do sinal mid codificado 182 para gerar um sinal mid de banda alta decodificado 224. Como um exemplo não limitativo, se o sinal mid codificado 182 for um sinal de Banda Super Larga com conteúdo de áudio entre 50 Hz e 16 kHz, a porção de banda alta do sinal mid codificado 182 pode variar de 8 kHz a 16 kHz. O decodificador de sinal mid de banda alta 166 pode decodificar a porção de banda alta do sinal mid codificado 182 para gerar o sinal mid de banda alta decodificado 224. O sinal mid de banda alta decodificado 224 (por exemplo, um canal no domínio do tempo) é fornecido à unidade de predição residual de banda alta 168 e ao decodificador ICBWE 174.[0059] The high-band mid signal decoder 164 may be configured to decode the high-band portion of the encoded mid signal 182 to generate a decoded high-band mid signal 224. As a non-limiting example, if the encoded mid signal 182 for a Super Wideband signal with audio content between 50 Hz and 16 kHz, the highband portion of the 182 encoded mid signal can range from 8 kHz to 16 kHz. The high-band MID signal decoder 166 may decode the high-band portion of the encoded MID signal 182 to generate the decoded high-band MID signal 224. The decoded high-band MID signal 224 (e.g., a time-domain channel ) is provided to the high-band residual prediction unit 168 and the ICBWE decoder 174.

[0060] A unidade de predição residual de banda alta 168 pode ser configurada para processar o sinal mid de banda alta decodificado 224 para gerar um sinal de predição residual de banda alta 226 (por exemplo, um canal de preenchimento estéreo de banda alta ou um sinal side predito de banda alta). Por exemplo, a unidade de predição residual de banda alta 168 pode incluir um ou mais filtros de decorrelação passa todas. A unidade de predição residual de banda alta 168 pode aplicar os filtros de decorrelação passa todas ao sinal mid de banda alta decodificado 224 (por exemplo, um sinal de largura de banda de 16 kHz) para gerar (ou "predizer") o sinal de predição residual de banda alta 226. O sinal de predição residual de banda alta 226 é fornecido ao decodificador ICBWE 174.[0060] The high-band residual prediction unit 168 may be configured to process the decoded high-band mid signal 224 to generate a high-band residual prediction signal 226 (e.g., a high-band stereo fill channel or a high-band predicted side signal). For example, the high-band residual prediction unit 168 may include one or more all-pass decorrelation filters. The high-band residual prediction unit 168 may apply the all-pass decorrelation filters to the decoded high-band mid signal 224 (e.g., a 16 kHz bandwidth signal) to generate (or "predict") the high-band signal. high-band residual prediction 226. High-band residual prediction signal 226 is provided to ICBWE decoder 174.

[0061] Em uma implementação particular, a unidade de predição residual de banda alta 168 inclui os filtros de decorrelação passa todas e um mapeador de ganho. Os filtros de decorrelação passa todas geram um sinal filtrado (por exemplo, um sinal no domínio do tempo) ao filtrar o sinal mid de banda alta decodificado 224. O mapeador de ganho gera o sinal de predição residual de banda alta 226 ao realizar uma operação de mapeamento de ganho no sinal filtrado.[0061] In a particular implementation, the high-band residual prediction unit 168 includes all pass decorrelation filters and a gain mapper. The all-pass decorrelation filters generate a filtered signal (e.g., a time-domain signal) by filtering the decoded high-band mid signal 224. The gain mapper generates the high-band residual prediction signal 226 by performing an operation of gain mapping on the filtered signal.

[0062] Em uma implementação particular, a unidade de predição residual de banda alta 168 gera o sinal de predição residual de banda alta 226 ao realizar uma operação de mapeamento espectral, uma operação de filtragem ou ambas. Por exemplo, a unidade de predição residual de banda alta 168 gera um sinal mapeado de forma espectral ao realizar uma operação de mapeamento espectral no sinal mid de banda alta decodificado 224 e gera o sinal de predição residual de banda alta 226 ao filtrar o sinal mapeado de forma espectral.[0062] In a particular implementation, the high-band residual prediction unit 168 generates the high-band residual prediction signal 226 by performing a spectral mapping operation, a filtering operation, or both. For example, the high-band residual prediction unit 168 generates a spectral mapped signal by performing a spectral mapping operation on the decoded high-band mid signal 224 and generates the high-band residual prediction signal 226 by filtering the mapped signal. spectrally.

[0063] O decodificador ICBWE 174 pode ser configurado para gerar um canal esquerdo de banda alta 228 e um canal direito de banda alta 230 com base no sinal mid de banda alta decodificado 224, no sinal de predição residual de banda alta 226 e nos parâmetros 184 (por exemplo, parâmetros ICBWE). As operações do decodificador ICBWE 174 são descritas em relação à FIG. 3.[0063] The ICBWE decoder 174 can be configured to generate a high-band left channel 228 and a high-band right channel 230 based on the decoded high-band mid signal 224, the high-band residual prediction signal 226 and the parameters 184 (for example, ICBWE parameters). The operations of ICBWE decoder 174 are described with reference to FIG. 3.

[0064] Com referência à FIG. 3, é mostrada uma implementação particular do decodificador ICBWE 174. O decodificador ICBWE 174 inclui uma unidade de geração residual de banda alta 302, um mapeador espectral 304, um mapeador de ganho 306, um circuito de combinação 308, um mapeador espectral 310, um mapeador de ganho 312, um circuito de combinação 314 e um seletor de canal 316.[0064] With reference to FIG. 3, a particular implementation of the ICBWE decoder 174 is shown. The ICBWE decoder 174 includes a high band residual generation unit 302, a spectral mapper 304, a gain mapper 306, a combining circuit 308, a spectral mapper 310, a gain mapper 312, a combination circuit 314 and a channel selector 316.

[0065] O sinal de predição residual de banda alta 226 é fornecido à unidade de geração residual de banda alta 302. O ganho de predição residual 186 (codificado no fluxo de bits 180) é fornecido também à unidade de geração de residual de banda alta 302. A unidade de geração residual de banda alta 302 pode ser configurada para aplicar o ganho de predição residual 186 ao sinal de predicação residual de banda alta 226 para gerar um canal residual de banda alta 324 (por exemplo, um sinal side de banda alta). Em algumas implementações, quando há mais de um ganho de predição residual de banda alta em diferentes bandas, esses ganhos podem ser aplicados de formas diferentes nas diferentes frequências de banda alta. Isto pode ser conseguido derivando um filtro a partir dos múltiplos ganhos de predição residual de banda alta e filtrando o sinal de predição residual de banda alta 226 com esse filtro para gerar o canal residual de banda alta 324. O canal residual de banda alta 324 é fornecido ao circuito de combinação 314 e ao mapeador espectral 310.[0065] The high-band residual prediction signal 226 is provided to the high-band residual generation unit 302. The residual prediction gain 186 (encoded in the bit stream 180) is also provided to the high-band residual generation unit 302. The 302 high-band residual generation unit may be configured to apply the 186 residual prediction gain to the 226 high-band residual predication signal to generate a 324 high-band residual channel (e.g., a high-band side signal ). In some implementations, when there is more than one high-band residual prediction gain on different bands, these gains may be applied differently at different high-band frequencies. This can be accomplished by deriving a filter from the multiple high-band residual prediction gains and filtering the high-band residual prediction signal 226 with that filter to generate the high-band residual channel 324. The high-band residual channel 324 is supplied to combination circuit 314 and spectral mapper 310.

[0066] De acordo com uma implementação, para um núcleo de banda baixa de 12,8 kHz, o sinal de predição residual de banda alta 226 (por exemplo, um sinal de preenchimento estéreo de banda alta mid) é processado pela unidade de geração residual de banda alta 302 utilizando ganhos de predicação residuais. Por exemplo, a unidade de geração residual de banda alta 302 pode mapear ganhos de duas bandas para um filtro de primeira ordem. O processamento pode ser realizado no domínio não invertido (un-flipped) (por exemplo, cobrindo 6,4 kHz a 14,4 kHz do sinal de 32 kHz). Alternativamente, o processamento pode ser realizado no canal de banda alta invertido de forma espectral e down-mixed (por exemplo, cobrindo 6,4 kHz a 14,4 kHz na banda base). Para um núcleo de banda baixa de 16 kHz, uma excitação não-linear de banda baixa de sinal mid é misturada com ruído em forma de envelope para gerar uma excitação não-linear de banda alta alvo. A excitação não linear de banda alta alvo é filtrada utilizando um filtro passa-baixa de banda alta de sinal mid para gerar o sinal mid de banda alta decodificado 224.[0066] According to one implementation, for a low-band core of 12.8 kHz, the high-band residual prediction signal 226 (for example, a mid-high-band stereo fill signal) is processed by the generation unit high-band residual 302 using residual predication gains. For example, high band residual generation unit 302 can map two band gains to a first order filter. Processing can be performed in the un-flipped domain (eg covering 6.4 kHz to 14.4 kHz of the 32 kHz signal). Alternatively, processing can be performed on the high-band channel spectrally inverted and down-mixed (eg covering 6.4 kHz to 14.4 kHz in the baseband). For a 16 kHz low-band core, a mid-signal low-band non-linear excitation is mixed with envelope-shaped noise to generate a target high-band non-linear excitation. The target high-band non-linear excitation is filtered using a mid-signal high-band low-pass filter to generate the decoded high-band mid signal 224.

[0067] O sinal mid de banda alta decodificado 224 é fornecido ao circuito de combinação 314 e ao mapeador espectral 304. O circuito de combinação 314 pode ser configurado para combinar o sinal mid de banda alta decodificado 224 e o canal residual de banda alta 324 para gerar um canal de referência de banda alta 332. Em algumas implementações, antes da geração do canal de referência de banda alta 332, a saída combinada do circuito de combinação 314 pode primeiro ser escalonada com um fator de ganho com base em 190. O canal de referência de banda alta 332 é fornecido ao seletor de canal 316.[0067] The decoded high-band mid signal 224 is provided to the combining circuit 314 and the spectral mapper 304. The combining circuit 314 may be configured to combine the decoded high-band mid signal 224 and the high-band residual channel 324 to generate a high-band reference channel 332. In some implementations, prior to generating the high-band reference channel 332, the combined output of the combining circuit 314 may first be scaled with a gain factor based on 190. high-band reference channel 332 is provided to channel selector 316.

[0068] O mapeador espectral 304 pode ser configurado para realizar uma primeira operação de mapeamento espectral no sinal mid de banda alta decodificado 224 para gerar um sinal mid de banda alta mapeado de forma espectral 320. Por exemplo, o mapeador espectral 304 pode aplicar os parâmetros de mapeamento espectral 188 (por exemplo, parâmetros de mapeamento espectral dequantizados) ao sinal mid de banda alta decodificado 224 para gerar o sinal mid de banda alta mapeado de forma espectral 320. O sinal mid de banda alta mapeado de forma espectral 320 é fornecido ao mapeador de ganho 306.[0068] The spectral mapper 304 can be configured to perform a first spectral mapping operation on the decoded high-band mid signal 224 to generate a spectrally mapped high-band mid signal 320. For example, the spectral mapper 304 can apply the spectral mapping parameters 188 (e.g., dequantized spectral mapping parameters) to the decoded high-band mid signal 224 to generate the spectrally mapped high-band mid signal 320. The spectrally mapped high-band mid signal 320 is provided to the gain mapper 306.

[0069] O mapeador de ganho 306 pode ser configurado para realizar uma primeira operação de mapeamento de ganho no sinal mid de banda alta mapeado de forma espectral 320 para gerar um primeiro canal mapeado por ganho de banda alta 322. Por exemplo, o mapeador de ganho 306 pode aplicar os parâmetros de mapeamento de ganho 190 ao sinal mid de banda alta mapeado de forma espectral 320 para gerar o primeiro canal mapeado por ganho de banda alta 322. O primeiro canal mapeado por ganho de banda alta 322 é fornecido ao circuito de combinação 308.[0069] The gain mapper 306 may be configured to perform a first gain mapping operation on the spectrally mapped high band mid signal 320 to generate a first high band gain mapped channel 322. Gain mapping 306 may apply gain mapping parameters 190 to the spectrally mapped high band mid signal 320 to generate the first high band gain mapped channel 322. The first high band gain mapped channel 322 is provided to the gain circuit. combination 308.

[0070] Na implementação ilustrada na FIG. 3, o decodificador ICBWE 174 inclui o mapeador espectral 304. Deve ser entendido que em algumas outras implementações, o decodificador ICBWE 174 não inclui o mapeador espectral 304. Nessas implementações, o sinal mid de banda alta decodificado 224 é fornecido ao mapeador de ganho 306 (em vez do mapeador espectral 304) e o mapeador de ganho 306 realiza a primeira operação de mapeamento de ganho no sinal mid de banda alta decodificado 224 para gerar o primeiro canal mapeado por ganho de banda 322. Por exemplo, o mapeador de ganho 306 pode aplicar os parâmetros de mapeamento de ganho 190 ao sinal mid de banda alta decodificado 224 para gerar o primeiro canal mapeado por ganho de banda alta 322.[0070] In the implementation illustrated in FIG. 3, ICBWE decoder 174 includes spectral mapper 304. It should be understood that in some other implementations, ICBWE decoder 174 does not include spectral mapper 304. In these implementations, the decoded high-band mid signal 224 is provided to gain mapper 306 (instead of spectral mapper 304) and gain mapper 306 performs the first gain mapping operation on the decoded high band mid signal 224 to generate the first gain band mapped channel 322. For example, gain mapper 306 may apply gain mapping parameters 190 to the decoded highband mid signal 224 to generate the first highband gain mapped channel 322.

[0071] O mapeador espectral 310 pode ser configurado para realizar uma segunda operação de mapeamento espectral no canal residual de banda alta 324 para gerar um canal residual de banda alta mapeado de forma espectral 326. Por exemplo, o mapeador espectral 310 pode aplicar os parâmetros de mapeamento espectral 188 ao canal residual de banda alta 324 para gerar o canal residual de banda alta mapeado de forma espectral 326. O canal residual de banda alta mapeado de forma espectral 326 é fornecido ao mapeador de ganho 312.[0071] The spectral mapper 310 can be configured to perform a second spectral mapping operation on the high-band residual channel 324 to generate a spectrally mapped high-band residual channel 326. For example, the spectral mapper 310 can apply the parameters from spectral mapping channel 188 to the high-band residual channel 324 to generate the spectrally mapped high-band residual channel 326. The spectrally mapped high-band residual channel 326 is provided to gain mapper 312.

[0072] O mapeador de ganho 312 pode ser configurado para realizar uma segunda operação de mapeamento de ganho no canal residual de banda alta mapeado de forma espectral 326 para gerar um segundo canal mapeado por ganho de banda alta 328. Por exemplo, o mapeador de ganho 312 pode aplicar os parâmetros de mapeamento de ganho 190 ao canal residual de banda alta mapeado de forma espectral 326 para gerar o segundo canal mapeado por ganho de banda alta 328. O segundo canal mapeado por ganho de banda alta 328 é fornecido ao circuito de combinação 308.[0072] The gain mapper 312 may be configured to perform a second gain mapping operation on the spectrally mapped high band residual channel 326 to generate a second high band gain mapped channel 328. Gain mapping 312 may apply the gain mapping parameters 190 to the spectrally mapped high band residual channel 326 to generate the second high band gain mapped channel 328. combination 308.

[0073] Na implementação ilustrada na FIG. 3, o decodificador ICBWE 174 inclui o mapeador espectral 310. Deve ser entendido que, em algumas outras implementações, o decodificador ICBWE 174 não inclui o mapeador espectral 310. Nessas implementações, o canal residual de banda alta 324 é fornecido ao mapeador de ganho 312 (em vez do mapeador espectral 310) e o mapeador de ganho 312 realiza a segunda operação de mapeamento de ganho no canal residual de banda alta 324 para gerar o segundo canal mapeado por ganho de banda alta 328. Por exemplo, o mapeador de ganho 312 pode aplicar os parâmetros de mapeamento de ganho 190 ao canal residual de banda alta 324 para gerar o segundo canal de mapeamento por ganho de banda alta 328.[0073] In the implementation illustrated in FIG. 3, ICBWE decoder 174 includes spectral mapper 310. It should be understood that, in some other implementations, ICBWE decoder 174 does not include spectral mapper 310. In these implementations, high-band residual channel 324 is provided to gain mapper 312 (instead of the spectral mapper 310) and the gain mapper 312 performs the second gain mapping operation on the high band residual channel 324 to generate the second high band gain mapped channel 328. For example, the gain mapper 312 can apply the gain mapping parameters 190 to the high band residual channel 324 to generate the second high band gain mapping channel 328.

[0074] Em outras implementações alternativas, em vez de aplicar o mapeamento espectral no canal residual de banda alta 324 e no sinal mid de banda alta decodificado 224 independentemente, o combinador 308 pode combinar os canais 324, 224, o mapeador espectral 304 pode realizar uma operação de mapeamento espectral nos canais combinados, e o mapeador de ganho 306 pode realizar o mapeamento de ganho no canal resultante para gerar o canal alvo de banda alta 330. Em outra implementação alternativa, as operações de mapeamento espectral no canal residual de banda alta 324 e no sinal mid de banda alta decodificado 224 podem ser realizadas independentemente, o combinador 308 pode combinar os canais resultantes e o mapeador de ganho 306 pode aplicar um ganho pra gerar o canal alvo de banda alta 330.[0074] In other alternative implementations, instead of applying spectral mapping on the high-band residual channel 324 and the decoded high-band mid signal 224 independently, combiner 308 can combine channels 324, 224, spectral mapper 304 can perform a spectral mapping operation on the combined channels, and the gain mapper 306 may perform gain mapping on the resulting channel to generate the high-band target channel 330. In another alternative implementation, the spectral mapping operations on the high-band residual channel 324 and the decoded high-band mid signal 224 can be performed independently, combiner 308 can combine the resulting channels, and gain mapper 306 can apply a gain to generate the target high-band channel 330.

[0075] O circuito de combinação 308 pode ser configurado para combinar o primeiro canal mapeado por ganho de banda alta 322 e o segundo canal mapeado por ganho de banda alta 328 para gerar um canal alvo de banda alta 330. O canal alvo de banda alta 330 é fornecido ao seletor de canal 316.[0075] The combination circuit 308 may be configured to combine the first high-band gain-mapped channel 322 and the second high-band gain-mapped channel 328 to generate a high-band target channel 330. The high-band target channel 330 is provided to channel selector 316.

[0076] O seletor de canal 316 pode ser configurado para designar um entre o canal de referência de banda alta 332 ou o canal alvo de banda alta 330 como o canal esquerdo de banda alta 228. O seletor de canal 316 pode também ser configurado para designar o outro entre o canal de referência de banda alta 332 ou o canal alvo de banda alta 330 como o canal direito de banda alta 230. Por exemplo, o indicador do canal de referência 192 é fornecido ao seletor de canal 316. Se o indicador de canal de referência 192 tiver um valor binário de "0", o seletor de canal 316 designa o canal de referência de banda alta 332 como o canal esquerdo de banda alta 228 e designa o canal alvo de banda alta 330 como o canal direito de banda alta 230. Se o indicador de canal de referência 192 tiver um valor binário de "1", o seletor de canal 316 designa o canal de referência de banda alta 332 como o canal direito de banda alta 230 e designa o canal alvo de banda alta 330 como o canal esquerdo de banda alta 228.[0076] Channel selector 316 may be configured to designate one of the high-band reference channel 332 or high-band target channel 330 as the high-band left channel 228. Channel selector 316 may also be configured to designate the other one of the 332 high-band reference channel or the 330 high-band target channel as the 230 high-band right channel. For example, the 192 reference channel flag is provided to the 316 channel selector. channel selector 192 has a binary value of "0", the channel selector 316 designates the high-band reference channel 332 as the left high-band channel 228 and designates the high-band target channel 330 as the right channel of highband 230. If the reference channel indicator 192 has a binary value of "1", the channel selector 316 designates the highband reference channel 332 as the highband right channel 230 and designates the highband target channel high 330 as the high band left channel 228.

[0077] Retornando à FIG. 2, o canal esquerdo de banda alta 228 é fornecido ao circuito de combinação 206 e o canal direito de banda alta 230 é fornecido ao circuito de combinação 208. O circuito de combinação 206 pode ser configurado para combinar o canal esquerdo de banda baixa 220 e o canal esquerdo de banda alta 228 para gerar o canal esquerdo 126 e o circuito de combinação 208 pode ser configurado para combinar o canal direito de banda baixa 222 e o canal direito de banda alta 230 para gerar o canal direito 128.[0077] Returning to FIG. 2, the high-band left channel 228 is supplied to the combination circuit 206 and the high-band right channel 230 is supplied to the combination circuit 208. The combination circuit 206 may be configured to combine the low-band left channel 220 and the highband left channel 228 to generate the left channel 126 and the combining circuit 208 can be configured to combine the lowband right channel 222 and the highband right channel 230 to generate the right channel 128.

[0078] As técnicas descritas com relação às FIGS. 1 a 3 podem reduzir a complexidade computacional ignorando as operações de reamostragem do sinal mid de banda baixa decodificado 212. Por exemplo, em vez de reamostrar o sinal mid de banda baixa decodificado 212 a 32 kHz, combinar o sinal reamostrado com o sinal mid de banda alta decodificado 224 e determinar um sinal de predição residual (por exemplo, um canal de preenchimento estéreo ou sinal side) com base no sinal combinado, a predição residual do sinal mid de banda baixa decodificado 212 pode ser determinada separadamente. Como um resultado, a complexidade computacional associada com a reamostragem do sinal mid de banda baixa decodificado 212 é reduzida e a análise DFT do sinal de predição residual de banda baixa 214 pode ser realizada a 16 kHz (em oposição a 32 kHz).[0078] The techniques described with respect to FIGS. 1 to 3 can reduce computational complexity by ignoring the resampling operations of the decoded lowband mid signal 212. For example, instead of resampling the decoded lowband mid signal 212 at 32 kHz, combine the resampled signal with the mid signal of decoded highband signal 224 and determine a residual prediction signal (e.g., a stereo fill channel or side signal) based on the combined signal, the residual prediction of the decoded lowband mid signal 212 can be separately determined. As a result, the computational complexity associated with resampling the decoded low-band mid signal 212 is reduced, and DFT analysis of the low-band residual prediction signal 214 can be performed at 16 kHz (as opposed to 32 kHz).

[0079] Com referência à FIG. 4, é mostrado um método 400 de processamento de um fluxo de bits codificado. O método 400 pode ser realizado pelo segundo dispositivo 106 da FIG. 1. Mais especificamente, o método 400 pode ser realizado pelo receptor 160 e pelo decodificador 162.[0079] With reference to FIG. 4, a method 400 of processing an encoded bit stream is shown. Method 400 may be performed by the second device 106 of FIG. 1. More specifically, method 400 can be performed by receiver 160 and decoder 162.

[0080] O método 400 inclui receber, em um decodificador, um fluxo de bits que inclui um sinal mid de codificador, em 402. Por exemplo, referindo-se à FIG. 1, o receptor 160 pode receber o fluxo de bits 180 a partir do primeiro dispositivo 104. O fluxo de bits 180 inclui o sinal mid codificado 182 e os parâmetros 184.[0080] Method 400 includes receiving, at a decoder, a bit stream that includes an encoder mid signal, at 402. For example, referring to FIG. 1, receiver 160 may receive bit stream 180 from first device 104. Bit stream 180 includes encoded mid signal 182 and parameters 184.

[0081] O método 400 inclui também decodificar uma porção de banda baixa do sinal mid codificado para gerar um sinal mid de banda baixa decodificado, em 404. Por exemplo, referindo-se à FIG. 2, o decodificador de sinal mid de banda baixa pode decodificar a porção de banda baixa do sinal mid codificado 182 para gerar o sinal mid de banda baixa decodificado 212. O método 400 inclui também processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa, em 406. Por exemplo, referindo-se à FIG. 2, a unidade de predição residual de banda baixa 170 pode processar o sinal mid de banda baixa decodificado 212 para gerar o sinal de predição residual de banda baixa 214.[0081] Method 400 also includes decoding a lowband portion of the encoded mid signal to generate a decoded lowband mid signal, at 404. For example, referring to FIG. 2, the lowband mid signal decoder may decode the lowband portion of the encoded mid signal 182 to generate the decoded lowband mid signal 212. Method 400 also includes processing the decoded lowband mid signal to generate a signal. low-band residual prediction at 406. For example, referring to FIG. 2, the lowband residual prediction unit 170 can process the decoded lowband mid signal 212 to generate the lowband residual prediction signal 214.

[0082] O método 400 inclui também gerar um canal esquerdo de banda baixa e um canal direito de banda baixa com base parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual de banda baixa, em 408. Por exemplo, referindo-se à FIG. 2, a unidade de transformada 202 pode realizar uma primeira operação de transformada no sinal de predição residual de banda baixa 214 para gerar o sinal de predição residual de banda baixa no domínio da frequência 216. A unidade de transformada 204 pode realizar uma segunda operação de transformada no sinal mid de banda baixa decodificado 212 para gerar o sinal mid de banda baixa 218 no domínio da frequência. O processador up-mix 172 pode receber os parâmetros 184 (incluindo o indicador de canal de referência 192 e o ganho de predição residual 186) e o processador up-mix 172 pode realizar uma operação up-mix para gerar o canal esquerdo de banda baixa 220 e o canal direito da banda baixa 222 com base nos parâmetros 184, no sinal mid da banda baixa no domínio da frequência 218 e no sinal de predição residual de banda baixa no domínio da frequência 216.[0082] The method 400 also includes generating a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal and the lowband residual prediction signal at 408. For example, referring to if to FIG. 2, the transform unit 202 can perform a first transform operation on the lowband residual prediction signal 214 to generate the lowband residual prediction signal in the frequency domain 216. The transform unit 204 can perform a second transform operation. transformed into the decoded low-band mid signal 212 to generate the low-band mid signal 218 in the frequency domain. Up-mix processor 172 may receive parameters 184 (including reference channel indicator 192 and residual prediction gain 186) and up-mix processor 172 may perform an up-mix operation to generate the low-band left channel 220 and the lowband right channel 222 based on the parameters 184, the frequency domain lowband mid signal 218, and the frequency domain lowband residual prediction signal 216.

[0083] O método 400 inclui também decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado, em 410. Por exemplo, referindo-se à FIG. 2, o decodificador de sinal mid de banda alta 164 pode decodificar a porção de banda alta do sinal mid codificado 182 para gerar o sinal mid de banda alta decodificado 224. O método 400 inclui também processar o sinal mid de banda alta decodificado para gerar um sinal de predição residual de banda alta, em 412. Por exemplo, referindo-se à FIG. 2, a unidade de predição residual de banda alta 168 pode processar o sinal mid de banda alta decodificado 224 para gerar o sinal de predição residual de banda alta 226. Em outra implementação, o sinal de predição residual de banda alta 226 pode ser estimado a partir do sinal de predição residual de banda baixa 214. Por exemplo, o sinal de predição residual de banda alta 226 pode ser estimado com base em uma extensão de largura de banda harmônica não linear do sinal de predição residual de banda baixa 214. Em uma implementação alternativa, o sinal de predição residual de banda alta 226 pode ser baseado em ruído modelado de forma temporal e espectral. O ruído modelado de forma temporal e espectral pode ser baseado em parâmetros de banda baixa e parâmetros de banda alta.[0083] Method 400 also includes decoding a highband portion of the encoded mid signal to generate a decoded highband mid signal, at 410. For example, referring to FIG. 2, high-band mid signal decoder 164 can decode the high-band portion of encoded mid signal 182 to generate decoded high-band mid signal 224. Method 400 also includes processing the decoded high-band mid signal to generate a high-band residual prediction signal, at 412. For example, referring to FIG. 2, the high-band residual prediction unit 168 can process the decoded high-band mid signal 224 to generate the high-band residual prediction signal 226. In another implementation, the high-band residual prediction signal 226 can be estimated to from the low-band residual prediction signal 214. For example, the high-band residual prediction signal 226 can be estimated based on a non-linear harmonic bandwidth extension of the low-band residual prediction signal 214. In an alternative implementation, the high-band residual prediction signal 226 may be based on temporally and spectrally modeled noise. The temporally and spectrally modeled noise can be based on lowband parameters and highband parameters.

[0084] O método 400 inclui também gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado e no sinal de predição residual de banda alta, em 414. Por exemplo, referindo-se às FIGS. 2 a 3, o decodificador ICBWE 174 pode gerar o canal esquerdo de banda alta 228 e o canal direito de banda alta 230 com base no sinal mid de banda alta decodificado 224 e no sinal de predição residual de banda alta 226. Para ilustrar, a unidade de geração residual de banda alta 302 aplica o ganho de predição residual 186 ao sinal de predição residual de banda alta 226 para gerar o canal residual de banda alta 324. O circuito de combinação 314 combina o sinal mid de banda alta decodificado 224 e o canal residual de banda alta 324 para gerar o canal de referência de banda alta 332.[0084] The method 400 also includes generating a high-band left channel and a high-band right channel based on the decoded high-band mid signal and the high-band residual prediction signal at 414. For example, referring to to FIGS. 2-3, the ICBWE decoder 174 can generate the high-band left channel 228 and the high-band right channel 230 based on the decoded high-band mid signal 224 and the high-band residual prediction signal 226. To illustrate, the high-band residual generation unit 302 applies the residual prediction gain 186 to the high-band residual prediction signal 226 to generate the high-band residual channel 324. The combination circuit 314 combines the decoded high-band mid signal 224 and the high-band residual channel 324 to generate high-band reference channel 332.

[0085] Adicionalmente, o mapeador espectral 304 realiza a primeira operação de mapeamento espectral no sinal mid de banda alta decodificado 224 para gerar o sinal mid de banda alta mapeado de forma espectral 320. O mapeador de ganho 306 realiza a primeira operação de mapeamento por ganho no sinal mid de banda alta mapeado de forma espectral 320 para gerar o primeiro canal mapeado por ganho de banda alta 322. O mapeador espectral 310 realiza a segunda operação de mapeamento espectral no canal residual de banda alta 324 para gerar o canal residual de banda alta mapeado de forma espectral 326. O mapeador de ganho 312 realiza a segunda operação de mapeamento por ganho no canal residual de banda alta mapeado de forma espectral 326 para gerar o segundo canal de mapeamento por ganho de banda alta 328. O primeiro canal de mapeamento por ganho de banda alta 322 e o segundo canal de mapeamento por ganho de banda alta 328 são combinados para gerar o canal alvo de banda alta 330. Com base no indicador de canal de referência 192, um entre os canais 330, 332 é designado como canal esquerdo de banda alta 228 e o outro entre os canais 330, 332 é designado como canal direito de banda alta 230.[0085] Additionally, the spectral mapper 304 performs the first spectral mapping operation on the decoded high-band mid signal 224 to generate the spectrally mapped high-band mid signal 320. The gain mapper 306 performs the first mapping operation by gain on the spectrally mapped high band mid signal 320 to generate the first high band gain mapped channel 322. The spectral mapper 310 performs the second spectral mapping operation on the high band residual channel 324 to generate the band residual channel The 326 spectrally mapped high band residual channel 326. The 312 gain mapper performs the second gain mapping operation on the 326 spectrally mapped high band residual channel to generate the 328 second high band gain mapping channel. The high-band gain mapping channel 322 and the second high-band gain mapping channel 328 are combined to generate the high-band target channel 330. Based on the reference channel indicator 192, one of the channels 330, 332 is designated as high-band left channel 228 and the other between channels 330, 332 is designated as high-band right channel 230.

[0086] O método 400 inclui também a emissão de um canal esquerdo e de um canal direito, em 416. O canal esquerdo pode ser baseado no canal esquerdo de banda baixa e no canal esquerdo de banda alta, e o canal direito pode ser baseado no canal direito de banda baixa e no canal direito de banda alta. Por exemplo, referindo-se à FIG. 2, o circuito de combinação 206 pode combinar o canal esquerdo de banda baixa 220 e o canal esquerdo de banda alta 228 para gerar o canal esquerdo 126 e o circuito de combinação 208 pode combinar o canal direito de banda baixa 222 e o canal direito de banda alta 230 para gerar o canal direito 128. Os alto-falantes 142, 144 da FIG. 1 podem emitir os canais 126, 128, respectivamente.[0086] The method 400 also includes outputting a left channel and a right channel at 416. The left channel can be based on the low band left channel and the high band left channel, and the right channel can be based on on the low-band right channel and the high-band right channel. For example, referring to FIG. 2, the combining circuit 206 can combine the left lowband channel 220 and the left highband channel 228 to generate the left channel 126, and the combining circuit 208 can combine the right lowband channel 222 and the right channel highband 230 to generate right channel 128. Speakers 142, 144 of FIG. 1 can output channels 126, 128 respectively.

[0087] O método 400 da FIG. 4 pode reduzir a complexidade computacional ignorando ou omitindo operações de reamostragem do sinal mid de banda baixa decodificado 212. Por exemplo, em vez de reamostrar o sinal mid de banda baixa decodificado 212 a 32 kHz, combinar o sinal reamostrado com o sinal mid de banda alta decodificado 224 e determinar um sinal de predição residual (por exemplo, um canal de preenchimento estéreo ou sinal side) com base no sinal combinado, a predição residual do sinal mid de banda baixa decodificado 212 pode ser determinada separadamente. Como um resultado, a complexidade computacional associada à reamostragem do sinal mid de banda baixa decodificado 212 é reduzida e a análise DFT do sinal de predição residual de banda baixa 214 pode ser realizada em 16 kHz (em oposição a 32 kHz).[0087] Method 400 of FIG. 4 can reduce computational complexity by skipping or omitting resampling operations on the decoded low-band mid signal 212. For example, instead of resampling the decoded low-band mid signal 212 at 32 kHz, combine the resampled signal with the high-band mid signal decoded high band 224 and determine a residual prediction signal (e.g., a stereo fill channel or side signal) based on the combined signal, the residual prediction of the decoded low band mid signal 212 may be separately determined. As a result, the computational complexity associated with resampling the decoded low-band mid signal 212 is reduced, and DFT analysis of the low-band residual prediction signal 214 can be performed at 16 kHz (as opposed to 32 kHz).

[0088] Com referência à FIG. 5, é representado um diagrama de blocos de um exemplo ilustrativo particular de um dispositivo (por exemplo, um dispositivo de comunicação sem fio) e geralmente designado 500. Em várias implementações, o dispositivo 500 pode ter menos ou mais componentes do que ilustrado na FIG. 5. Em uma implementação ilustrativa, o dispositivo 500 pode corresponder ao primeiro dispositivo 104 da FIG. 1 ou ao segundo dispositivo 106 da FIG. 1. Em uma implementação ilustrativa, o dispositivo 500 pode realizar uma ou mais operações descritas com referência a sistemas e métodos das FIGS. 1 a 4.[0088] With reference to FIG. 5, a block diagram of a particular illustrative example of a device (eg, a wireless communication device) and generally designated 500 is depicted. In various implementations, device 500 may have fewer or more components than illustrated in FIG. . 5. In an illustrative implementation, device 500 may correspond to first device 104 of FIG. 1 or the second device 106 of FIG. 1. In an illustrative implementation, device 500 can perform one or more operations described with reference to systems and methods of FIGS. 1 to 4.

[0089] Em uma implementação particular, o dispositivo 500 inclui um processador 506 (por exemplo, uma unidade central de processamento (CPU)). O dispositivo 500 pode incluir um ou mais processadores 510 (por exemplo, um ou mais processadores de sinal digital (DSPs)). Os processadores 510 podem incluir um codificador/decodificador (CODEC) de mídia (por exemplo, fala e música) 508 e um cancelador de eco 512. O CODEC de mídia 508 pode incluir o decodificador 162, o codificador 134 ou uma combinação dos mesmos.[0089] In a particular implementation, the device 500 includes a processor 506 (eg, a central processing unit (CPU)). Device 500 may include one or more processors 510 (e.g., one or more digital signal processors (DSPs)). Processors 510 may include a media (eg, speech and music) encoder/decoder (CODEC) 508 and an echo canceller 512. Media CODEC 508 may include decoder 162, encoder 134, or a combination thereof.

[0090] O dispositivo 500 pode incluir uma memória 553 e um CODEC 534. Embora o CODEC de mídia 508 seja ilustrado como um componente dos processadores 510 (por exemplo, conjunto de circuitos dedicados e/ou código de programação executável), em outras implementações um ou mais componentes do CODEC de mídia 508, como o decodificador 162, o codificador 134, ou uma combinação dos mesmos, pode ser incluída no processador 506, no CODEC 534, em outro componente de processamento ou em uma combinação dos mesmos.[0090] Device 500 may include a memory 553 and a CODEC 534. Although media CODEC 508 is illustrated as a component of processors 510 (e.g., dedicated circuitry and/or executable programming code), in other implementations one or more components of media CODEC 508, such as decoder 162, encoder 134, or a combination thereof, may be included in processor 506, CODEC 534, another processing component, or a combination thereof.

[0091] O dispositivo 500 pode incluir o receptor 160 acoplado a uma antena 542. O dispositivo 500 pode incluir uma tela 528 acoplada a um controlador de exibição 526. Um ou mais speakers 548 podem ser acoplados ao CODEC 534. Um ou mais microfones 546 podem ser acoplados, através da(s) interface(s) de entrada 112, ao CODEC 534. Em uma implementação particular, os speakers 548 podem incluir o primeiro alto-falante 142, o segundo alto-falante 144 da FIG. 1, ou uma combinação dos mesmos. Em uma implementação particular, os microfones 546 podem incluir o primeiro microfone 146, o segundo microfone 148 da FIG. 1, ou uma combinação dos mesmos. O CODEC 534 pode incluir um conversor digital/analógico (DAC) 502 e um conversor analógico/digital (ADC) 504.[0091] The device 500 may include the receiver 160 coupled to an antenna 542. The device 500 may include a screen 528 coupled to a display controller 526. One or more speakers 548 may be coupled to the CODEC 534. One or more microphones 546 may be coupled, via input interface(s) 112, to CODEC 534. In a particular implementation, speakers 548 may include first speaker 142, second speaker 144 of FIG. 1, or a combination thereof. In a particular implementation, microphones 546 may include first microphone 146, second microphone 148 of FIG. 1, or a combination thereof. CODEC 534 may include a digital to analog converter (DAC) 502 and an analog to digital converter (ADC) 504.

[0092] A memória 553 pode incluir instruções 591 executáveis pelo processador 506, pelos processadores 510, pelo CODEC 534, por outra unidade de processamento do dispositivo 500, ou por uma combinação dos mesmos, para realizar uma ou mais operações descritas com referência às FIGS. 1 a 4.[0092] The memory 553 may include instructions 591 executable by the processor 506, by the processors 510, by the CODEC 534, by another processing unit of the device 500, or by a combination thereof, to perform one or more operations described with reference to FIGS. . 1 to 4.

[0093] Um ou mais componentes do dispositivo 500 podem ser implementados por meio de hardware dedicado (por exemplo, conjunto de circuitos), por um processador executando instruções para realizar uma ou mais tarefas, ou uma combinação dos mesmos. Como um exemplo, a memória 553 ou um ou mais componentes do processador 506, os processadores 510 e/ou o CODEC 534 podem ser um dispositivo de memória, tal como uma memória de acesso aleatório (RAM), memória de acesso aleatório magnetoresistiva (MRAM), MRAM por transferência de torque por meio de rotação (STT-MRAM), memória flash, memória somente de leitura (ROM), memória programável somente de leitura (PROM), memória somente de leitura programável e apagável (EPROM), memória somente de leitura programável apagável eletricamente (EEPROM), registros, disco rígido, um disco removível ou uma memória somente de leitura em disco compacto (CD-ROM). O dispositivo de memória pode incluir instruções (por exemplo, as instruções 591) que, quando executadas por um computador (por exemplo, um processador no CODEC 534, o processador 506 e/ou os processadores 510), podem fazer com que o computador execute uma ou mais operações descritas com referência às FIGS. 1 a 4. Como um exemplo, a memória 553 ou os um ou mais componentes do processador 506, os processadores 510 e/ou o CODEC 534 podem ser um meio legível por computador não transitório que inclui instruções (por exemplo, as instruções 591) que, quando executado por um computador (por exemplo, um processador no CODEC 534, o processador 506 e/ou os processadores 510), faz com que o computador execute uma ou mais operações descritas com referência às FIGS. 1 a 4.[0093] One or more components of device 500 may be implemented through dedicated hardware (eg, circuitry), by a processor executing instructions to perform one or more tasks, or a combination thereof. As an example, memory 553 or one or more components of processor 506, processors 510 and/or CODEC 534 may be a memory device such as random access memory (RAM), magnetoresistive random access memory (MRAM ), Rotational Torque Transfer MRAM (STT-MRAM), Flash Memory, Read-Only Memory (ROM), Programmable Read-Only Memory (PROM), Programmable Read-Only Erasable Memory (EPROM), Memory Only electrically erasable programmable read-only memory (EEPROM), registers, hard disk, a removable disk, or read-only memory on a compact disk (CD-ROM). The memory device may include instructions (for example, the 591 instructions) that, when executed by a computer (for example, a processor on the 534 CODEC, the 506 processor, and/or the 510 processors), can cause the computer to execute one or more operations described with reference to FIGS. 1 to 4. As an example, memory 553 or the one or more components of processor 506, processors 510 and/or CODEC 534 may be a non-transient computer-readable medium that includes instructions (e.g., instructions 591) which, when executed by a computer (e.g., a processor at CODEC 534, processor 506, and/or processors 510), causes the computer to perform one or more operations described with reference to FIGS. 1 to 4.

[0094] Em uma implementação particular, o dispositivo 500 pode ser incluído em um dispositivo de sistema em pacote ou sistema em chip (por exemplo, um modem de estação móvel (MSM)) 522. Em uma implementação particular, o processador 506, os processadores 510, o controlador de exibição 526, a memória 553, o CODEC 534 e o receptor 160 são incluídos em um dispositivo sistema em pacote ou sistema em chip 522. Em uma implementação particular, um dispositivo de entrada 530, tal como uma tela sensível ao toque e/ou keypad, e uma fonte de alimentação 544 são acoplados ao dispositivo do sistema em chip 522. Além disso, em uma implementação particular, conforme ilustrado na FIG. 5, a tela 528, o dispositivo de entrada 530, os speakers 548, os microfones 546, a antena 542 e a fonte de alimentação 544 são externos ao dispositivo do sistema em chip 522. No entanto, cada um dentre as telas 528, os dispositivos de entrada 530, os speakers 548, os microfones 546, a antena 542 e fonte de alimentação 544 pode ser acoplado a um componente do dispositivo sistema em chip 522, tal como uma interface ou um controlador.[0094] In a particular implementation, the device 500 may be included in a system-on-a-package or system-on-a-chip device (e.g., a mobile station modem (MSM)) 522. In a particular implementation, the processor 506, the processors 510, display controller 526, memory 553, CODEC 534, and receiver 160 are included in a system-on-package or system-on-chip device 522. In a particular implementation, an input device 530, such as a touch screen and/or keypad, and a power supply 544 are coupled to system-on-chip device 522. Furthermore, in one particular implementation, as illustrated in FIG. 5, screen 528, input device 530, speakers 548, microphones 546, antenna 542, and power supply 544 are external to system-on-chip device 522. However, each of the screens 528, the Input devices 530, speakers 548, microphones 546, antenna 542 and power supply 544 may be coupled to a system-on-chip device component 522, such as an interface or a controller.

[0095] O dispositivo 500 pode incluir um telefone sem fio, um dispositivo de comunicação móvel, um telefone móvel, um telefone inteligente, um telefone celular, um computador laptop, um computador de mesa, um computador, um tablet, um set top box, um assistente digital pessoal (PDA), um dispositivo de exibição, uma televisão, um console de jogos, um reprodutor de música, um rádio, um reprodutor de vídeo, uma unidade de entretenimento, um dispositivo de comunicação, uma unidade de dados de localização fixa, um reprodutor de mídia pessoal, um reprodutor de vídeo digital, um reprodutor de disco de vídeo digital (DVD), um sintonizador, uma câmera, um dispositivo de navegação, um sistema decodificador, um sistema codificador ou qualquer combinação dos mesmos.[0095] The device 500 may include a cordless phone, a mobile communication device, a mobile phone, a smart phone, a cell phone, a laptop computer, a desktop computer, a computer, a tablet, a set top box , a personal digital assistant (PDA), a display device, a television, a game console, a music player, a radio, a video player, an entertainment unit, a communication device, a data drive fixed location, a personal media player, a digital video player, a digital video disc (DVD) player, a tuner, a camera, a navigation device, a decoder system, an encoder system, or any combination thereof.

[0096] Com referência à FIG. 6, é representado um diagrama de blocos de um exemplo ilustrativo particular de uma estação base 600. Em várias implementações, a estação base 600 pode ter mais componentes ou menos componentes do que ilustrado na FIG. 6. Em um exemplo ilustrativo, a estação base 600 pode incluir o primeiro dispositivo 104 ou o segundo dispositivo 106 da FIG. 1. Em um exemplo ilustrativo, a estação base 600 pode operar de acordo com um ou mais dentre os métodos ou sistemas descritos com referência às FIGS. 1 a 4.[0096] With reference to FIG. 6, a block diagram of a particular illustrative example of a base station 600 is depicted. In various implementations, base station 600 may have more components or fewer components than illustrated in FIG. 6. In an illustrative example, base station 600 may include first device 104 or second device 106 of FIG. 1. In an illustrative example, base station 600 can operate in accordance with one or more of the methods or systems described with reference to FIGS. 1 to 4.

[0097] A estação base 600 pode ser parte de um sistema de comunicação sem fio. O sistema de comunicação sem fio pode incluir múltiplas estações base e múltiplos dispositivos sem fio. O sistema de comunicação sem fio pode ser um sistema de Evolução a Longo Prazo (LTE), um sistema de Acesso Múltiplo por Divisão de Código (CDMA), um sistema Global para Comunicações Móveis (GSM), um sistema de rede local sem fio (WLAN) ou algum outro sistema sem fio. Um sistema CDMA pode implementar CDMA de Banda Larga (WCDMA), CDMA 1X, Evolução de Dados Otimizados (EVDO), CDMA síncrono por Divisão de Tempo (TD-SCDMA) ou alguma outra versão de CDMA.[0097] The base station 600 may be part of a wireless communication system. The wireless communication system can include multiple base stations and multiple wireless devices. The wireless communication system may be a Long Term Evolution (LTE) system, a Code Division Multiple Access (CDMA) system, a Global System for Mobile Communications (GSM), a wireless LAN system ( WLAN) or some other wireless system. A CDMA system may implement Wideband CDMA (WCDMA), CDMA 1X, Optimized Data Evolution (EVDO), Time Division Synchronous CDMA (TD-SCDMA), or some other version of CDMA.

[0098] Os dispositivos sem fio podem também ser referidos como equipamento de usuário (UE), uma estação móvel, um terminal, um terminal de acesso, uma unidade de assinante, uma estação, etc. Os dispositivos sem fio podem incluir um telefone celular, um telefone inteligente, um tablet, um modem sem fio, um assistente digital pessoal (PDA), um dispositivo portátil, um laptop, um smartbook, um netbook, um tablet, um telefone sem fio, uma estação de loop local sem fio (WLL), um dispositivo Bluetooth, etc. Os dispositivos sem fio podem incluir ou corresponder ao dispositivo 600 da FIG. 6.[0098] Wireless devices can also be referred to as user equipment (UE), a mobile station, a terminal, an access terminal, a subscriber unit, a station, etc. Wireless devices can include a cell phone, a smart phone, a tablet, a wireless modem, a personal digital assistant (PDA), a handheld device, a laptop, a smartbook, a netbook, a tablet, a cordless phone , a wireless local loop station (WLL), a Bluetooth device, etc. Wireless devices can include or correspond to device 600 of FIG. 6.

[0099] Várias funções podem ser realizadas por um ou mais componentes da estação base 600 (e/ou em outros componentes não mostrados), tais como enviar e receber mensagens e dados (por exemplo, dados de áudio). Em um exemplo particular, a estação base 600 inclui um processador 606 (por exemplo, uma CPU). A estação base 600 pode incluir um transcodificador 610. O transcodificador 610 pode incluir um CODEC de áudio 608. Por exemplo, o transcodificador 610 pode incluir um ou mais componentes (por exemplo, conjunto de circuitos) configurados para realizar as operações do CODEC de áudio 608. Como outro exemplo, o transcodificador 610 pode ser configurado para realizar uma ou mais instruções legíveis por computador para realizar as operações do CODEC de áudio 608. Embora o CODEC de áudio 608 seja ilustrado como um componente do transcodificador 610, em outros exemplos um ou mais componentes do CODEC de áudio 608 podem ser incluídos no processador 606, em outro componente de processamento ou em uma combinação dos mesmos. Por exemplo, um decodificador 638 (por exemplo, um decodificador de vocoder) pode ser incluído em um processador de dados de receptor 664. Como outro exemplo, um codificador 636 (por exemplo, um codificador de vocoder) pode ser incluído em um processador de dados de transmissão 682.[0099] Various functions may be performed by one or more base station components 600 (and/or other components not shown), such as sending and receiving messages and data (eg, audio data). In a particular example, base station 600 includes a processor 606 (e.g., a CPU). Base station 600 may include a transcoder 610. Transcoder 610 may include an audio CODEC 608. For example, transcoder 610 may include one or more components (e.g., circuitry) configured to perform the operations of the audio CODEC 608. As another example, transcoder 610 can be configured to carry out one or more computer-readable instructions to perform the operations of audio CODEC 608. Although audio CODEC 608 is illustrated as a component of transcoder 610, in other examples a or more audio CODEC components 608 may be included in processor 606, another processing component, or a combination thereof. For example, a decoder 638 (e.g., a vocoder decoder) can be included in a receiver data processor 664. As another example, an encoder 636 (e.g., a vocoder encoder) can be included in a receiver data processor. broadcast data 682.

[0100] O transcodificador 610 pode funcionar para transcodificar mensagens e dados entre duas ou mais redes. O transcodificador 610 pode ser configurado para converter dados de mensagem e áudio a partir de um primeiro formato (por exemplo, um formato digital) para um segundo formato. Para ilustrar, o decodificador 638 pode decodificar sinais codificados tendo um primeiro formato e o codificador 636 pode codificar os sinais decodificados em sinais codificados tendo um segundo formato. Adicionalmente ou alternativamente, o transcodificador 610 pode ser configurado para realizar a adaptação da taxa de dados. Por exemplo, o transcodificador 610 pode converter de forma descendente uma taxa de dados ou converter de forma ascendente a taxa de dados sem alterar um formato dos dados de áudio. Para ilustrar, o transcodificador 610 pode converter de forma descendente sinais de 64 kbit/s em sinais de 16 kbit/s.[0100] The transcoder 610 can function to transcode messages and data between two or more networks. Transcoder 610 may be configured to convert message and audio data from a first format (e.g., a digital format) to a second format. To illustrate, decoder 638 can decode encoded signals having a first format, and encoder 636 can encode the decoded signals into encoded signals having a second format. Additionally or alternatively, transcoder 610 may be configured to perform data rate adaptation. For example, transcoder 610 can down convert a data rate or up convert a data rate without changing a format of the audio data. To illustrate, transcoder 610 can downconvert 64 kbit/s signals to 16 kbit/s signals.

[0101] O CODEC de áudio 608 pode incluir o codificador 636 e o decodificador 638. O codificador 636 pode incluir o codificador 134 da FIG. 1. O decodificador 638 pode incluir o decodificador 162 da FIG. 1.[0101] Audio CODEC 608 may include encoder 636 and decoder 638. Encoder 636 may include encoder 134 of FIG. 1. Decoder 638 may include decoder 162 of FIG. 1.

[0102] A estação base 600 pode incluir uma memória 632. A memória 632, tal como um dispositivo de armazenamento legível por computador, pode incluir instruções. As instruções podem incluir uma ou mais instruções executáveis pelo processador 606, pelo transcodificador 610 ou por uma combinação dos mesmos, para realizar uma ou mais operações descritas com referência aos métodos e sistemas das FIGS. 1 a 4. A estação base 600 pode incluir múltiplos transmissores e receptores (por exemplo, transceptores), tais como um primeiro transceptor 652 e um segundo transceptor 654, acoplado a um arranjo de antenas. O arranjo de antenas pode incluir uma primeira antena 642 e uma segunda antena 644. O arranjo de antenas pode ser configurado para se comunicar de forma sem fio com um ou mais dispositivos sem fio, tal como o dispositivo 600 da FIG. 6. Por exemplo, a segunda antena 644 pode receber um fluxo de dados 614 (por exemplo, um fluxo de bits) a partir de um dispositivo sem fio. O fluxo de dados 614 pode incluir mensagens, dados (por exemplo, dados de fala codificados) ou uma combinação dos mesmos.[0102] Base station 600 may include memory 632. Memory 632, such as a computer-readable storage device, may include instructions. Instructions may include one or more instructions executable by processor 606, transcoder 610, or a combination thereof, to perform one or more operations described with reference to the methods and systems of FIGS. 1 to 4. Base station 600 may include multiple transmitters and receivers (e.g., transceivers), such as a first transceiver 652 and a second transceiver 654, coupled to an array of antennas. The antenna array can include a first antenna 642 and a second antenna 644. The antenna array can be configured to communicate wirelessly with one or more wireless devices, such as device 600 of FIG. 6. For example, the second antenna 644 may receive a stream of data 614 (eg, a stream of bits) from a wireless device. Data stream 614 can include messages, data (e.g., encoded speech data), or a combination thereof.

[0103] A estação base 600 pode incluir uma conexão de rede 660, tal como conexão de canal de transporte de retorno. A conexão de rede 660 pode ser configurada para se comunicar com uma rede núcleo ou com uma ou mais estações base da rede de comunicação sem fio. Por exemplo, a estação base 600 pode receber um segundo fluxo de dados (por exemplo, mensagens ou dados de áudio) a partir de uma rede núcleo através da conexão de rede 660. A estação base 600 pode processar o segundo fluxo de dados para gerar mensagens ou dados de áudio e fornecer as mensagens ou os dados de áudio para um ou mais dispositivos sem fio através de uma ou mais antenas do arranjo de antenas ou para outra estação base através da conexão de rede 660. Em uma implementação particular, a conexão de rede 660 pode ser uma conexão de rede de longa distância (WAN), como um exemplo ilustrativo e não limitativo. Em algumas implementações, a rede núcleo pode incluir ou corresponder a uma rede telefônica pública comutada (PSTN), uma rede principal (backbone) em pacote, ou ambas.[0103] The base station 600 may include a network connection 660, such as a backhaul connection. Network connection 660 can be configured to communicate with a core network or with one or more base stations of the wireless communication network. For example, base station 600 may receive a second stream of data (e.g., messages or audio data) from a core network over network connection 660. Base station 600 may process the second stream of data to generate audio messages or data and deliver the messages or audio data to one or more wireless devices through one or more antennas of the antenna array or to another base station through network connection 660. In a particular implementation, the connection network connection 660 may be a wide area network (WAN) connection, as an illustrative and non-limiting example. In some implementations, the core network may include or correspond to a public switched telephone network (PSTN), a bundled core (backbone) network, or both.

[0104] A estação base 600 pode incluir um gateway de mídia 670 que é acoplado à conexão de rede 660 e ao processador 606. O gateway de mídia 670 pode ser configurado para converter entre fluxos de mídia de diferentes tecnologias de telecomunicações. Por exemplo, o gateway de mídia 670 pode converter entre diferentes protocolos de transmissão, entre diferentes esquemas de codificação ou entre ambos. Para ilustrar, o gateway de mídia 670 pode converter a partir de sinais PCM para sinais de Protocolo de Transporte em Tempo Real (RTP), como um exemplo ilustrativo e não limitativo. O gateway de mídia 670 pode converter dados entre redes comutadas em pacotes (por exemplo, uma rede de Voz Sobre Protocolo Internet (VoIP), um Sistema Multimídia IP (IMS), uma rede sem fio de quarta geração (4G), tal como LTE, WiMax e UMB, etc., redes comutadas por circuito (por exemplo, uma PSTN) e redes híbridas (por exemplo, uma rede sem fio de segunda geração (2G), tal como GSM, GPRS e EDGE, uma rede sem fio de terceira geração (3G), tal como WCDMA, EV-DO e HSPA, etc.).[0104] The base station 600 may include a media gateway 670 that is coupled to the network connection 660 and the processor 606. The media gateway 670 may be configured to convert between media streams of different telecommunications technologies. For example, Media Gateway 670 can convert between different transmission protocols, between different encoding schemes, or between both. To illustrate, media gateway 670 can convert from PCM signals to Real Time Transport Protocol (RTP) signals, as an illustrative and non-limiting example. The 670 media gateway can convert data between packet-switched networks (e.g., a Voice Over Internet Protocol (VoIP) network, an IP Multimedia System (IMS), a fourth generation (4G) wireless network, such as LTE , WiMax and UMB, etc., circuit-switched networks (for example, a PSTN) and hybrid networks (for example, a second generation (2G) wireless network such as GSM, GPRS and EDGE, a third generation (3G), such as WCDMA, EV-DO and HSPA, etc.).

[0105] Adicionalmente, o gateway de mídia 670 pode incluir uma transcodificação e pode ser configurado para transcodificar dados quando os codecs são incompatíveis. Por exemplo, o gateway de mídia 670 pode transcodificar entre um codec Multi-Taxa Adaptativo (AMR) e um codec G.711, como um exemplo ilustrativo e não limitativo. O gateway de mídia 670 pode incluir um roteador e uma pluralidade de interfaces físicas. Em algumas implementações, o gateway de mídia 670 pode incluir também um controlador (não mostrado). Em uma implementação particular, o controlador de gateway de mídia pode ser externo ao gateway de mídia 670, externo à estação base 600, ou externo a ambos. O controlador de gateway de mídia pode controlar e coordenar as operações de múltiplos gateways de mídia. O gateway de mídia 670 pode receber sinais de controle a partir do controlador de gateway de mídia e pode funcionar para fazer a ponte entre diferentes tecnologias de transmissão e pode adicionar serviço aos recursos e conexões de usuário final.[0105] Additionally, media gateway 670 can include transcoding and can be configured to transcode data when codecs are incompatible. For example, the 670 media gateway can transcode between an Adaptive Multi-Rate (AMR) codec and a G.711 codec, as an illustrative and non-limiting example. Media gateway 670 may include a router and a plurality of physical interfaces. In some implementations, the 670 media gateway may also include a controller (not shown). In a particular implementation, the media gateway controller can be external to media gateway 670, external to base station 600, or external to both. The Media Gateway Controller can control and coordinate the operations of multiple Media Gateways. The 670 media gateway can receive control signals from the media gateway controller and can function to bridge different transmission technologies and can add service to end-user resources and connections.

[0106] A estação base 600 pode incluir um demodulador 662 que é acoplado aos transceptores 652, 654, ao processador de dados de receptor 664 e ao processador 606 e ao processador de dados de receptor 664 pode ser acoplado ao processador 606. O demodulador 662 pode ser configurado para demodular sinais modulados recebidos a partir dos transceptores 652, 654 e para fornecer dados demodulados para o processador de dados de receptor 664. O processador de dados de receptor 664 pode ser configurado para extrair uma mensagem ou dados de áudio a partir dos dados demodulados e enviar a mensagem ou os dados de áudio para o processador 606.[0106] The base station 600 may include a demodulator 662 that is coupled to the transceivers 652, 654, the receiver data processor 664 and the processor 606, and the receiver data processor 664 may be coupled to the processor 606. The demodulator 662 may be configured to demodulate modulated signals received from transceivers 652, 654 and to provide demodulated data to receiver data processor 664. Receiver data processor 664 may be configured to extract message or audio data from the demodulated data and send the message or audio data to processor 606.

[0107] A estação base 600 pode incluir um processador de dados de transmissão 682 e um processador de transmissão de múltiplas entradas e múltiplas saídas (MIMO) 684. O processador de dados de transmissão 682 pode ser acoplado ao processador 606 e ao processador MIMO de transmissão 684. O processador MIMO de transmissão 684 pode ser acoplado aos transceptores 652, 654 e ao processador 606. Em algumas implementações, o processador MIMO de transmissão 684 pode ser acoplado ao gateway de mídia 670. O processador de dados de transmissão 682 pode ser configurado para receber as mensagens ou os dados de áudio a partir do processador 606 e codificar as mensagens ou os dados de áudio com base em um esquema de codificação, tal como CDMA ou multiplexação por divisão de frequência ortogonal (OFDM), como um exemplo ilustrativo e não limitativo. O processador de dados de transmissão 682 pode fornecer os dados codificados para o processador MIMO de transmissão 684.[0107] The base station 600 may include a transmission data processor 682 and a multiple-input, multiple-output (MIMO) transmission processor 684. The transmission data processor 682 may be coupled with the processor 606 and the MIMO processor of transmission 684. Transmission MIMO processor 684 may be coupled to transceivers 652, 654 and processor 606. In some implementations, transmission MIMO processor 684 may be coupled to media gateway 670. Transmission data processor 682 may be coupled to configured to receive messages or audio data from processor 606 and encode the messages or audio data based on an encoding scheme, such as CDMA or orthogonal frequency division multiplexing (OFDM), as an illustrative example and not limiting. Stream data processor 682 may provide the encoded data to stream MIMO processor 684.

[0108] Os dados codificados podem ser multiplexados com outros dados, tais como dados piloto, utilizando técnicas de CDMA ou de OFDM para gerar dados multiplexados. Os dados multiplexados podem ser então modulados (isto é, mapeados em símbolo) pelo processador de dados de transmissão 682 com base em um esquema de modulação particular (por exemplo, Modulação por deslocamento de fase binária ("BPSK"), Modulação por deslocamento de fase em quadratura ("QSPK"), Modulação por deslocamento de fase M-ária ("M-PSK"), Modulação de amplitude em quadratura em M-ária ("M-QAM"), etc.) para gerar símbolos de modulação. Em uma implementação particular, os dados codificados e os outros dados podem ser modulados utilizando diferentes esquemas de modulação. A taxa de dados, de codificação e de modulação para cada fluxo de dados pode ser determinada pelas instruções executadas pelo processador 606.[0108] Encoded data can be multiplexed with other data, such as pilot data, using CDMA or OFDM techniques to generate multiplexed data. The multiplexed data may then be modulated (i.e., symbol mapped) by transmit data processor 682 based on a particular modulation scheme (e.g., Binary Phase Shift Keying ("BPSK"), Binary Phase Shift Keying ("BPSK") Quadrature Phase ("QSPK"), M-ary Phase Shift Modulation ("M-PSK"), M-ary Quadrature Amplitude Modulation ("M-QAM"), etc.) to generate modulation symbols . In a particular implementation, the coded data and the other data may be modulated using different modulation schemes. The data, encoding, and modulation rate for each data stream can be determined by instructions executed by processor 606.

[0109] O processador MIMO de transmissão 684 pode ser configurado para receber os símbolos de modulação a partir do processador de dados de transmissão 682 e pode processar ainda mais os símbolos de modulação e pode realizar a conformação de feixes nos dados. Por exemplo, o processador MIMO de transmissão 684 pode aplicar pesos de conformação de feixes aos símbolos de modulação. Os pesos de conformação de feixes podem corresponder a uma ou mais antenas do arranjo de antenas a partir da qual os símbolos de modulação são transmitidos.[0109] The transmit MIMO processor 684 can be configured to receive the modulation symbols from the transmit data processor 682 and can further process the modulation symbols and can perform beamshaping on the data. For example, transmit MIMO processor 684 can apply beamforming weights to modulation symbols. The beamshaping weights may correspond to one or more antennas of the antenna array from which the modulation symbols are transmitted.

[0110] Durante a operação, a segunda antena 644 da estação base 600 pode receber um fluxo de dados 614. O segundo transceptor 654 pode receber o fluxo de dados 614 a partir da segunda antena 644 e pode fornecer o fluxo de dados 614 para o demodulador 662. O demodulador 662 pode demodular sinais modulados do fluxo de dados 614 e fornecer dados demodulados ao processador de dados de receptor 664. O processador de dados de receptor 664 pode extrair dados de áudio a partir dos dados demodulados e fornecer os dados de áudio extraídos para o processador 606.[0110] During operation, the second antenna 644 of the base station 600 can receive a data stream 614. The second transceiver 654 can receive the data stream 614 from the second antenna 644 and can deliver the data stream 614 to the demodulator 662. Demodulator 662 can demodulate modulated signals from data stream 614 and provide demodulated data to receiver data processor 664. Receiver data processor 664 can extract audio data from the demodulated data and provide the audio data extracted for the 606 processor.

[0111] O processador 606 pode fornecer os dados de áudio para o transcodificador 610 para transcodificação. O decodificador 638 do transcodificador 610 pode decodificar os dados de áudio a partir de um primeiro formato em dados de áudio decodificados e o codificador 636 pode codificar os dados de áudio decodificados em um segundo formato. Em algumas implementações, o codificador 636 pode codificar os dados de áudio utilizando uma taxa de dados mais alta (por exemplo, conversão de forma ascendente) ou uma taxa de dados mais baixa (por exemplo, conversão de forma descendente) do que a recebida a partir do dispositivo sem fio. Em outras implementações, os dados de áudio podem não ser transcodificados. Embora a transcodificação (por exemplo, decodificação e codificação) seja ilustrada como sendo realizada por um transcodificador 610, as operações de transcodificação (por exemplo, decodificação e codificação) podem ser realizadas por múltiplos componentes da estação base 600. Por exemplo, a decodificação pode ser realizada pelo processador de dados de receptor 664 e a codificação pode ser realizada pelo processador de dados de transmissão 682. Em outras implementações, o processador 606 pode fornecer os dados de áudio para o gateway de mídia 670 para conversão para outro protocolo de transmissão, para outro esquema de codificação ou para ambos. O gateway de mídia 670 pode fornecer os dados convertidos para outra estação base ou rede núcleo através da conexão de rede 660.[0111] Processor 606 may provide the audio data to transcoder 610 for transcoding. Decoder 638 of transcoder 610 can decode the audio data from a first format into decoded audio data, and encoder 636 can encode the decoded audio data into a second format. In some implementations, encoder 636 may encode the audio data using a higher data rate (e.g., upconversion) or a lower data rate (e.g., downconversion) than that received at from the wireless device. In other implementations, audio data may not be transcoded. While transcoding (eg, decoding and encoding) is illustrated as being performed by one transcoder 610, transcoding operations (eg, decoding and encoding) may be performed by multiple components of base station 600. For example, decoding may be performed by receiver data processor 664 and encoding may be performed by transmit data processor 682. In other implementations, processor 606 may provide the audio data to media gateway 670 for conversion to another transmission protocol, to another encoding scheme or to both. Media gateway 670 may deliver the converted data to another base station or core network via network connection 660.

[0112] Dados de áudio codificados gerados no codificador 636, tais como dados transcodificados, podem ser fornecidos para o processador de dados de transmissão 682 ou para conexão de rede 660 através do processador 606. Os dados de áudio transcodificados a partir do transcodificador 610 podem ser fornecidos para o processador de dados de transmissão 682 para codificação de acordo com um esquema de modulação, tal como OFDM, para gerar os símbolos de modulação. O processador de dados de transmissão 682 pode fornecer os símbolos de modulação para o processador MIMO de transmissão 684 para processamento adicional e conformação de feixes. O processador MIMO de transmissão 684 pode aplicar pesos de conformação de feixes e pode fornecer os símbolos de modulação para uma ou mais antenas do arranjo de antenas, tal como a primeira antena 642 através do primeiro transceptor 652. Assim, a estação base 600 pode fornecer um fluxo de dados transcodificado 616, que corresponde ao fluxo de dados 614 recebido a partir do dispositivo sem fio, para outro dispositivo sem fio. O fluxo de dados transcodificado 616 pode ter um formato de codificação, uma taxa de dados, ou ambos, diferente do fluxo de dados 614. Em outras implementações, o fluxo de dados transcodificado 616 pode ser fornecido para conexão de rede 660 para transmissão para outra estação base ou para uma rede núcleo.[0112] Encoded audio data generated in the encoder 636, such as transcoded data, can be provided to the transmission data processor 682 or for network connection 660 through the processor 606. The transcoded audio data from the transcoder 610 can be provided to transmission data processor 682 for encoding according to a modulation scheme, such as OFDM, to generate the modulation symbols. Stream data processor 682 may provide the modulation symbols to stream MIMO processor 684 for further processing and beam shaping. The transmit MIMO processor 684 can apply beamshaping weights and can provide the modulation symbols to one or more antennas of the antenna array, such as the first antenna 642 through the first transceiver 652. Thus, the base station 600 can provide a transcoded data stream 616 corresponding to the data stream 614 received from the wireless device to another wireless device. Transcoded data stream 616 may have a different encoding format, data rate, or both than data stream 614. In other implementations, transcoded data stream 616 may be provided to network connection 660 for transmission to another base station or to a core network.

[0113] Em uma implementação particular, um ou mais componentes dos sistemas e dispositivos descritos neste documento podem ser integrados dentro de um sistema ou aparelho de decodificação (por exemplo, um dispositivo eletrônico, um CODEC ou um processador dentro dele), dentro de um sistema ou aparelho de codificação, ou em ambos. Em outras implementações, um ou mais componentes dentre os sistemas e dispositivos descritos neste documento podem ser integrados dentro de um telefone sem fio, um computador tablet, um computador de mesa, um computador laptop, um set top box, um reprodutor de música, um reprodutor de vídeo, uma unidade de entretenimento, uma televisão, um console de jogos, um dispositivo de navegação, um dispositivo de comunicação, um assistente pessoal digital (PDA), uma unidade de dados de localização fixa, um reprodutor de mídia pessoal ou outro tipo de dispositivo.[0113] In a particular implementation, one or more components of the systems and devices described in this document may be integrated within a system or decoding apparatus (for example, an electronic device, a CODEC or a processor within it), within a encoding system or apparatus, or both. In other implementations, one or more of the systems and devices described in this document may be integrated into a cordless phone, a tablet computer, a desktop computer, a laptop computer, a set top box, a music player, a video player, entertainment unit, television, game console, navigation device, communication device, personal digital assistant (PDA), fixed location data unit, personal media player, or other device type.

[0114] Em conjunto com as técnicas descritas, um aparelho inclui meios para receber um sinal mid codificado. Por exemplo, os meios para receber o sinal mid codificado podem incluir o receptor 160 das FIGS. 1 e 5, o decodificador 162 das FIGS. 1, 2 e 5, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0114] In conjunction with the described techniques, an apparatus includes means for receiving an encoded mid signal. For example, the means for receiving the encoded MID signal may include the receiver 160 of FIGS. 1 and 5, the decoder 162 of FIGS. 1, 2, and 5, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0115] O aparelho inclui também meios para decodificar uma porção de banda baixa do sinal mid codificado para gerar um sinal mid decodificado de banda baixa. Por exemplo, os meios para decodificação podem incluir o decodificador 162 das FIGS. 1, 2 e 5, o decodificador de sinal mid de banda baixa 166 das FIGS. 1 a 2, o CODEC 508 da FIG. 5, o processador 506 da FIG. 5, as instruções 591 executáveis por um processador, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0115] The apparatus also includes means for decoding a lowband portion of the encoded mid signal to generate a lowband decoded mid signal. For example, the means for decoding may include decoder 162 of FIGS. 1, 2, and 5, the low-band mid signal decoder 166 of FIGS. 1 to 2, the CODEC 508 of FIG. 5, processor 506 of FIG. 5, instructions 591 executable by a processor, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0116] O aparelho inclui também meios para processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa. Por exemplo, os meios para processamento podem incluir o decodificador 162 das FIGS. 1, 2 e 5, a unidade de predição residual de banda baixa 170 das FIGS. 1 a 2, o CODEC 508 da FIG. 5, o processador 506 da FIG. 5, as instruções 591 executáveis por um processador, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0116] The apparatus also includes means for processing the decoded lowband mid signal to generate a lowband residual prediction signal. For example, the means for processing may include the decoder 162 of FIGS. 1, 2, and 5, the low-band residual prediction unit 170 of FIGS. 1 to 2, the CODEC 508 of FIG. 5, processor 506 of FIG. 5, instructions 591 executable by a processor, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0117] O aparelho inclui também meios para gerar um canal esquerdo de banda baixa e um canal direito de banda baixa com base parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual de banda baixa. Por exemplo, os meios para gerar podem incluir o decodificador 162 das FIGS. 1, 2 e 5, o processador up-mix 172 das FIGS. 1-2, o CODEC 508 da FIG. 5, o processador 506 da FIG. 5, as instruções 591 executáveis por um processador, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0117] The apparatus also includes means for generating a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal and the lowband residual prediction signal. For example, the means for generating may include decoder 162 of FIGS. 1, 2 and 5, the up-mix processor 172 of FIGS. 1-2, the CODEC 508 of FIG. 5, processor 506 of FIG. 5, instructions 591 executable by a processor, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0118] O aparelho inclui também meios para decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado. Por exemplo, os meios para decodificação podem incluir o decodificador 162 das FIGS. 1, 2 e 5, o decodificador de sinal mid de banda alta 164 das FIGS. 1-2, o CODEC 508 da FIG. 5, o processador 506 da FIG. 5, as instruções 591 executáveis por um processador, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0118] The apparatus also includes means for decoding a high band portion of the encoded mid signal to generate a decoded high band mid signal. For example, the means for decoding may include decoder 162 of FIGS. 1, 2, and 5, the high-band mid signal decoder 164 of FIGS. 1-2, the CODEC 508 of FIG. 5, processor 506 of FIG. 5, instructions 591 executable by a processor, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0119] O aparelho inclui também meios para processar o sinal mid de banda alta decodificado para gerar um sinal de predição residual de banda alta. Por exemplo, os meios para processar podem incluir o decodificador 162 das FIGS. 1, 2 e 5, a unidade de predição residual de banda alta 168 das FIGS. 1 a 2, o CODEC 508 da FIG. 5, o processador 506 da FIG. 5, as instruções 591 executáveis por um processador, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0119] The apparatus also includes means for processing the decoded high-band mid signal to generate a high-band residual prediction signal. For example, the means for processing may include the decoder 162 of FIGS. 1, 2, and 5, the high-band residual prediction unit 168 of FIGS. 1 to 2, the CODEC 508 of FIG. 5, processor 506 of FIG. 5, instructions 591 executable by a processor, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0120] O aparelho inclui também meios para gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado e no sinal de predição residual de banda alta. Por exemplo, os meios para gerar podem incluir o decodificador 162 das FIGS. 1, 2 e 5, o decodificador ICBWE 174 das FIGS. 1 a 3, a unidade de geração residual de banda alta 302 da FIG. 3, o mapeador espectral 304 da FIG. 3, o mapeador espectral 310 da FIG. 3, o mapeador de ganho 306 da FIG. 3, o mapeador de ganho 312 da FIG. 3, os circuitos de combinação 308, 314 da FIG. 3, o seletor de canal 316 da FIG. 3, o CODEC 508 da FIG. 5, o processador 506 da FIG. 5, as instruções 591 executáveis por um processador, o decodificador 638 da FIG. 6, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0120] The apparatus also includes means for generating a high-band left channel and a high-band right channel based on the decoded high-band mid signal and the high-band residual prediction signal. For example, the means for generating may include decoder 162 of FIGS. 1, 2, and 5, the ICBWE decoder 174 of FIGS. 1-3, the high-band residual generation unit 302 of FIG. 3, the spectral mapper 304 of FIG. 3, the spectral mapper 310 of FIG. 3, the gain mapper 306 of FIG. 3, gain mapper 312 of FIG. 3, combination circuits 308, 314 of FIG. 3, channel selector 316 of FIG. 3, the CODEC 508 of FIG. 5, processor 506 of FIG. 5, instructions 591 executable by a processor, decoder 638 of FIG. 6, one or more other devices, circuits, modules or any combination thereof.

[0121] O aparelho inclui também meios para emitir um canal esquerdo e um canal direito. O canal esquerdo pode ser baseado no canal esquerdo de banda baixa e no canal esquerdo de banda alta, e o canal direito pode ser baseado no canal direito de banda baixa e no canal direito de banda alta. Por exemplo, os meios para emissão podem incluir os alto-falantes 142, 144 da FIG. 1, os alto-falantes 548 da FIG. 5, um ou outros mais dispositivos, circuitos, módulos ou qualquer combinação dos mesmos.[0121] The apparatus also includes means for outputting a left channel and a right channel. The left channel can be based on the lowband left channel and the highband left channel, and the right channel can be based on the lowband right channel and the highband right channel. For example, means for broadcasting could include loudspeakers 142, 144 of FIG. 1, speakers 548 of FIG. 5, one or more other devices, circuits, modules or any combination thereof.

[0122] Deve ser notado que várias funções realizadas por um ou mais componentes dos sistemas e dispositivos descritos neste documento são descritas como sendo realizadas por determinados componentes ou módulos. Esta divisão de componentes e módulos é meramente ilustrativa. Em uma implementação alternativa, uma função realizada por um componente ou módulo particular pode ser dividida entre múltiplos componentes ou módulos. Além disso, em uma implementação alternativa, dois ou mais componentes ou módulos podem ser integrados dentro de um único componente ou módulo. Cada componente ou módulo pode ser implementado utilizando hardware (por exemplo, um dispositivo de arranjo de portas programáveis em campo (FPGA), um circuito integrado de aplicação específica (ASIC), um DSP, um controlador etc.), software (por exemplo, instruções executáveis por um processador) ou qualquer combinação dos mesmos.[0122] It should be noted that several functions performed by one or more components of the systems and devices described in this document are described as being performed by certain components or modules. This division of components and modules is merely illustrative. In an alternative implementation, a function performed by a particular component or module may be split across multiple components or modules. Furthermore, in an alternative implementation, two or more components or modules may be integrated within a single component or module. Each component or module can be implemented using hardware (for example, a field-programmable gate array device (FPGA), application-specific integrated circuit (ASIC), DSP, controller, etc.), software (for example, instructions executable by a processor) or any combination thereof.

[0123] Aqueles versados na técnica devem entender adicionalmente que os vários blocos lógicos, configurações, módulos, circuitos e etapas de algoritmos ilustrativos descritos em conexão com as implementações descritas neste documento podem ser implementados como hardware eletrônico, software de computador executado por um dispositivo de processamento, tal como um processador de hardware, ou combinações de ambos. Vários componentes, blocos, configurações, módulos, circuitos e etapas ilustrativos foram descritos acima geralmente em termos de sua funcionalidade. Se essa funcionalidade é implementada como hardware ou software executável depende das restrições particulares de aplicação e projeto impostas ao sistema geral. Técnicos versados podem implementar a funcionalidade descrita de várias maneiras para cada aplicação em particular, mas essas decisões de implementação não devem ser interpretadas como causadoras de um afastamento do escopo da presente descrição.[0123] Those skilled in the art should further understand that the various logic blocks, configurations, modules, circuits, and illustrative algorithm steps described in connection with the implementations described in this document may be implemented as electronic hardware, computer software executed by a device of processing, such as a hardware processor, or combinations of both. Various illustrative components, blocks, configurations, modules, circuits, and steps have been described above generally in terms of their functionality. Whether this functionality is implemented as hardware or executable software depends on the particular application and design constraints imposed on the overall system. Skilled technicians may implement the described functionality in various ways for each particular application, but such implementation decisions should not be construed as causing a departure from the scope of the present description.

[0124] As etapas de um método ou de um algoritmo descritas em conexão com as implementações descritas neste documento podem ser incorporadas diretamente em hardware, em um módulo de software executado por um processador ou em uma combinação dos dois. Um módulo de software pode residir em um dispositivo de memória, tal como uma memória de acesso aleatório (RAM), memória de acesso aleatório magnetoresistiva (MRAM), MRAM por transferência de torque por meio de rotação (STT-MRAM), memória flash, memória somente de leitura (ROM), memória programável somente de leitura (PROM), memória somente de leitura programável e apagável (EPROM), memória somente de leitura programável apagável eletricamente (EEPROM), registros, disco rígido, um disco removível ou uma memória somente de leitura em disco compacto (CD-ROM). Um dispositivo de memória exemplar é acoplado ao processador, de modo que o processador possa ler informações e gravar informações no dispositivo de memória. Em alternativa, o dispositivo de memória pode ser parte integrante do processador. O processador e o meio de armazenamento podem residir em um Circuito Integrado de Aplicação Específica (ASIC). O ASIC pode residir em um dispositivo de computação ou em um terminal de usuário. Em alternativa, o processador e o meio de armazenamento podem residir como componentes discretos em um dispositivo de computação ou em um terminal de usuário.[0124] The steps of a method or an algorithm described in connection with the implementations described in this document can be incorporated directly in hardware, in a software module executed by a processor or in a combination of the two. A software module may reside in a memory device such as random access memory (RAM), magnetoresistive random access memory (MRAM), torque transfer MRAM (STT-MRAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disk, a removable disk, or memory read-only on compact disc (CD-ROM). An exemplary memory device is coupled to the processor so that the processor can read information from and write information to the memory device. Alternatively, the memory device may be an integral part of the processor. The processor and storage medium may reside on an Application Specific Integrated Circuit (ASIC). The ASIC can reside on a computing device or on a user terminal. Alternatively, the processor and storage medium may reside as discrete components in a computing device or user terminal.

[0125] A descrição anterior das implementações descritas é fornecida para permitir que uma pessoa versada na técnica faça ou utilize as implementações descritas. Várias modificações a essas implementações serão prontamente aparentes para aqueles versados na técnica, e os princípios definidos neste documento podem ser aplicados a outras implementações sem se afastar do escopo da descrição. Assim, a presente descrição não se destina a ser limitada às implementações mostradas neste documento, mas deve receber o escopo mais amplo possível, consistente com os princípios e as novas características, conforme definido pelas reivindicações a seguir.[0125] The previous description of the described implementations is provided to allow a person skilled in the art to make or use the described implementations. Various modifications to these implementations will be readily apparent to those skilled in the art, and the principles defined in this document can be applied to other implementations without departing from the scope of the description. Thus, the present description is not intended to be limited to the implementations shown in this document, but should be given the widest possible scope, consistent with the principles and new features, as defined by the following claims.

Claims (15)

1. Dispositivo, caracterizado pelo fato de que compreende: um decodificador de sinal mid de banda baixa configurado para decodificar uma porção de banda baixa de um sinal mid codificado para gerar um sinal mid de banda baixa decodificado, em que o sinal mid codificado corresponde a uma soma de um primeiro sinal de áudio e um segundo sinal de áudio; uma unidade de predição residual de banda baixa configurada para processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa; um processador up-mix configurado para gerar um canal esquerdo de banda baixa e um canal direito de banda baixa, baseado parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual da banda baixa; um decodificador de sinal mid de banda alta configurado para decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado no domínio do tempo; uma unidade de predição residual de banda alta configurada para processar o sinal mid de banda alta decodificado no domínio do tempo para gerar um sinal de predição residual de banda alta no domínio do tempo; e um decodificador de extensão de largura de banda inter-canal configurado para gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado no domínio do tempo e no sinal de predição residual de banda alta no domínio do tempo.1. Device, comprising: a lowband mid signal decoder configured to decode a lowband portion of an encoded mid signal to generate a decoded lowband mid signal, wherein the encoded mid signal corresponds to a sum of a first audio signal and a second audio signal; a lowband residual prediction unit configured to process the decoded lowband mid signal to generate a lowband residual prediction signal; an up-mix processor configured to generate a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal and the lowband residual prediction signal; a high band mid signal decoder configured to decode a high band portion of the encoded mid signal to generate a time domain decoded high band mid signal; a high-band residual prediction unit configured to process the time-domain decoded high-band mid signal to generate a high-band time-domain residual prediction signal; and an inter-channel bandwidth extension decoder configured to generate a high-band left channel and a high-band right channel based on the time-domain decoded high-band mid signal and the high-band residual prediction signal in the time domain. 2. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende um receptor configurado para receber um fluxo de bits que inclui o sinal mid codificado, um ou mais parâmetros e um indicador de canal de referência, os um ou mais parâmetros compreendendo um ganho de predição residual, em que o processador up-mix é configurado adicionalmente para gerar o canal esquerdo de banda baixa e o canal direito de banda baixa pelo menos parcialmente com base nos um ou mais parâmetros e no indicador de canal de referência.2. Device according to claim 1, characterized in that it comprises a receiver configured to receive a bit stream that includes the encoded mid signal, one or more parameters and a reference channel indicator, the one or more parameters comprising a residual prediction gain, wherein the up-mix processor is further configured to generate the lowband left channel and the lowband right channel at least partially based on the one or more parameters and the reference channel flag. 3. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que a unidade de predição residual de banda alta compreende: um ou mais filtros passa todas configurados para gerar um sinal filtrado no domínio do tempo pela filtragem do sinal mid de banda alta decodificado no domínio do tempo; e um mapeador de ganho configurado para gerar o sinal de predição residual de banda alta no domínio do tempo ao realizar uma operação de mapeamento de ganho no sinal no domínio de tempo filtrado.3. Device according to claim 1, characterized in that the high-band residual prediction unit comprises: one or more pass filters all configured to generate a time-domain filtered signal by filtering the high-band mid signal decoded in the time domain; and a gain mapper configured to generate the high-band residual prediction signal in the time domain by performing a gain mapping operation on the filtered time domain signal. 4. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que a unidade de predição residual de banda alta é adicionalmente configurada para: gerar um sinal mapeado de forma espectral ao realizar uma operação de mapeamento espectral no sinal mid de banda alta decodificado no domínio do tempo; e gerar o sinal de predição residual de banda alta no domínio do tempo ao filtrar o sinal mapeado de forma espectral.4. Device according to claim 1, characterized in that the high-band residual prediction unit is further configured to: generate a spectral mapped signal by performing a spectral mapping operation on the decoded high-band mid signal in the time domain; and generating the high-band residual prediction signal in the time domain by filtering the spectral mapped signal. 5. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: um primeiro circuito de combinação configurado para combinar o canal esquerdo de banda baixa e o canal esquerdo de banda alta para gerar um canal esquerdo; um segundo circuito de combinação configurado para combinar o canal direito de banda baixa e o canal direito de banda alta para gerar um canal direito; e um dispositivo de saída configurado para emitir o canal esquerdo e o canal direito.5. Device according to claim 1, characterized in that it additionally comprises: a first combination circuit configured to combine the low-band left channel and the high-band left channel to generate a left channel; a second combining circuit configured to combine the lowband right channel and the highband right channel to generate a right channel; and an output device configured to output the left channel and the right channel. 6. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o decodificador de extensão de largura de banda inter-canal compreende: uma unidade de geração residual de banda alta configurada para aplicar um ganho de predição residual ao sinal de predição residual de banda alta no domínio do tempo para gerar um canal residual de banda alta; e um terceiro circuito de combinação configurado para combinar o sinal mid de banda alta decodificado no domínio do tempo e o canal residual de banda alta para gerar um canal de referência de banda alta.6. Device according to claim 1, characterized in that the inter-channel bandwidth extension decoder comprises: a high-band residual generation unit configured to apply a residual prediction gain to the residual prediction signal high-band time domain to generate a high-band residual channel; and a third combining circuit configured to combine the time-domain decoded high-band mid signal and the high-band residual channel to generate a high-band reference channel. 7. Dispositivo, de acordo com a reivindicação 6, caracterizado pelo fato de que o decodificador de extensão de largura de banda inter-canal compreende adicionalmente: um primeiro mapeador espectral configurado para realizar uma primeira operação de mapeamento espectral no sinal mid de banda alta decodificado no domínio do tempo para gerar um sinal mid de banda alta mapeado de forma espectral; e um segundo mapeador espectral configurado para realizar uma segunda operação de mapeamento espectral no canal residual de banda alta para gerar um canal residual de banda alta mapeado de forma espectral.7. Device according to claim 6, characterized in that the inter-channel bandwidth extension decoder further comprises: a first spectral mapper configured to perform a first spectral mapping operation on the decoded high-band mid signal in the time domain to generate a spectral mapped high-band mid signal; and a second spectral mapper configured to perform a second spectral mapping operation on the highband residual channel to generate a spectrally mapped highband residual channel. 8. Dispositivo, de acordo com a reivindicação 6, caracterizado pelo fato de que o decodificador de extensão de largura de banda inter-canal compreende adicionalmente um primeiro mapeador de ganho configurado para realizar uma primeira operação de mapeamento de ganho no sinal mid de banda alta decodificado no domínio do tempo para gerar um primeiro canal mapeado por ganho de banda alta.8. Device according to claim 6, characterized in that the inter-channel bandwidth extension decoder further comprises a first gain mapper configured to perform a first gain mapping operation on the high-band mid signal decoded in the time domain to generate a high-bandwidth gain-mapped first channel. 9. Dispositivo, de acordo com a reivindicação 8, caracterizado pelo fato de que o decodificador de extensão de largura de banda inter-canal compreende adicionalmente um segundo mapeador de ganho configurado para realizar uma segunda operação de mapeamento de ganho no canal residual de banda alta para gerar um segundo canal mapeado por ganho de banda alta.9. Device according to claim 8, characterized in that the inter-channel bandwidth extension decoder further comprises a second gain mapper configured to perform a second gain mapping operation on the high-band residual channel to generate a second high-bandgain mapped channel. 10. Dispositivo, de acordo com a reivindicação 9, caracterizado pelo fato de que o decodificador de extensão de largura de banda inter-canal compreende adicionalmente: um quarto circuito de combinação configurado para combinar o primeiro canal mapeado por ganho de banda alta e o segundo canal mapeado por ganho de banda alta para gerar um canal alvo de banda alta; e um seletor de canal configurado para: receber um indicador de canal de referência; e com base no indicador do canal de referência: designar um entre o canal de referência de banda alta ou canal alvo de banda alta como o canal esquerdo de banda alta; e designar o outro entre o canal de referência de banda alta ou o canal alvo de banda alta como o canal direito de banda alta.10. Device according to claim 9, characterized in that the inter-channel bandwidth extension decoder further comprises: a fourth combining circuit configured to combine the first high-bandwidth mapped channel and the second high-band gain mapped channel to generate a high-band target channel; and a channel selector configured to: receive a reference channel indicator; and based on the flag of the reference channel: designate one of the high-band reference channel or high-band target channel as the high-band left channel; and designating the other one of the highband reference channel or the highband target channel as the highband right channel. 11. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o decodificador de sinal mid de banda baixa, a unidade de predição residual de banda baixa, o processador up-mix, o decodificador de sinal mid de banda alta, a unidade de predição residual de banda alta e o decodificador de extensão de largura de banda inter-canal são integrados dentro de uma estação base.11. Device according to claim 1, characterized in that the low-band mid signal decoder, the low-band residual prediction unit, the up-mix processor, the high-band mid signal decoder, the high-band residual prediction unit and inter-channel bandwidth extension decoder are integrated within a base station. 12. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o decodificador de sinal mid de banda baixa, a unidade de predição residual de banda baixa, o processador up-mix, o decodificador de sinal mid de banda alta, a unidade de predição residual de banda alta, e o decodificador de extensão de largura de banda inter-canal são integrados dentro de um dispositivo móvel.12. Device according to claim 1, characterized in that the low-band mid signal decoder, the low-band residual prediction unit, the up-mix processor, the high-band mid signal decoder, the high-band residual prediction unit, and inter-channel bandwidth extension decoder are integrated within a mobile device. 13. Método caracterizado pelo fato de que compreende: decodificar uma porção de banda baixa de um sinal mid codificado para gerar um sinal mid de banda baixa decodificado, em que o sinal mid codificado corresponde a uma soma de um primeiro sinal de áudio e um segundo sinal de áudio; processar o sinal mid de banda baixa decodificado para gerar um sinal de predição residual de banda baixa; gerar um canal esquerdo de banda baixa e um canal direito de banda baixa com base parcialmente no sinal mid de banda baixa decodificado e no sinal de predição residual de banda baixa; decodificar uma porção de banda alta do sinal mid codificado para gerar um sinal mid de banda alta decodificado; processar o sinal mid de banda alta decodificado para gerar um sinal de predição residual de banda alta; e gerar um canal esquerdo de banda alta e um canal direito de banda alta com base no sinal mid de banda alta decodificado e no sinal de predição residual de banda alta.13. Method characterized in that it comprises: decoding a lowband portion of an encoded mid signal to generate a decoded lowband mid signal, wherein the encoded mid signal corresponds to a sum of a first audio signal and a second audio signal; processing the decoded lowband mid signal to generate a lowband residual prediction signal; generating a lowband left channel and a lowband right channel based partially on the decoded lowband mid signal and the lowband residual prediction signal; decoding a highband portion of the encoded mid signal to generate a decoded highband mid signal; processing the decoded high-band mid signal to generate a high-band residual prediction signal; and generating a highband left channel and a highband right channel based on the decoded highband mid signal and the highband residual prediction signal. 14. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que compreende adicionalmente: realizar uma primeira operação de transformada no sinal de predição residual de banda baixa para gerar um sinal de predição residual de banda baixa no domínio da frequência; e realizar uma segunda operação de transformada no sinal mid de banda baixa decodificado para gerar um sinal mid de banda baixa no domínio da frequência.14. The method of claim 13, further comprising: performing a first transform operation on the low-band residual prediction signal to generate a low-band residual prediction signal in the frequency domain; and performing a second transform operation on the decoded lowband mid signal to generate a frequency domain lowband mid signal. 15. Memória legível por computador caracterizada pelo fato de que compreende instruções armazenadas na mesma, as instruções sendo executáveis por um computador para realizar as etapas de método conforme definido em qualquer uma das reivindicações 13 a 14.15. Computer-readable memory characterized by the fact that it comprises instructions stored therein, the instructions being executable by a computer to carry out the method steps as defined in any one of claims 13 to 14.
BR112019026971-1A 2017-06-29 2018-06-06 HIGH BANDWIDTH RESIDUAL PREDICTION WITH INTER-CHANNEL BANDWIDTH EXTENSION IN THE TIME DOMAIN BR112019026971B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762526854P 2017-06-29 2017-06-29
US62/526,854 2017-06-29
US16/000,551 2018-06-05
US16/000,551 US10431231B2 (en) 2017-06-29 2018-06-05 High-band residual prediction with time-domain inter-channel bandwidth extension
PCT/US2018/036253 WO2019005441A1 (en) 2017-06-29 2018-06-06 High-band residual prediction with time-domain inter-channel bandwidth extension

Publications (2)

Publication Number Publication Date
BR112019026971A2 BR112019026971A2 (en) 2020-06-30
BR112019026971B1 true BR112019026971B1 (en) 2023-06-06

Family

ID=

Similar Documents

Publication Publication Date Title
ES2821676T3 (en) Encoding multiple audio signals
US10891961B2 (en) Encoding of multiple audio signals
US10885925B2 (en) High-band residual prediction with time-domain inter-channel bandwidth extension
US10593341B2 (en) Coding of multiple audio signals
BR112019027202A2 (en) intercanal prediction in the time domain
US10854212B2 (en) Inter-channel phase difference parameter modification
TWI724290B (en) Communication device, method of decoding signal, non-transitory computer-readable medium, and communication apparatus
BR112019026971B1 (en) HIGH BANDWIDTH RESIDUAL PREDICTION WITH INTER-CHANNEL BANDWIDTH EXTENSION IN THE TIME DOMAIN
BR112018010305B1 (en) CODING MULTIPLE AUDIO SIGNALS