BR112021013726A2 - Método implementado por computador para realizar quantização residual, dispositivo eletrônico e meio legível por computador não transitório - Google Patents

Método implementado por computador para realizar quantização residual, dispositivo eletrônico e meio legível por computador não transitório Download PDF

Info

Publication number
BR112021013726A2
BR112021013726A2 BR112021013726-2A BR112021013726A BR112021013726A2 BR 112021013726 A2 BR112021013726 A2 BR 112021013726A2 BR 112021013726 A BR112021013726 A BR 112021013726A BR 112021013726 A2 BR112021013726 A2 BR 112021013726A2
Authority
BR
Brazil
Prior art keywords
residual
signal
quantization
quantized
pitch
Prior art date
Application number
BR112021013726-2A
Other languages
English (en)
Inventor
Yang Gao
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of BR112021013726A2 publication Critical patent/BR112021013726A2/pt

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/0017Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters

Landscapes

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

Abstract

método implementado por computador para realizar quantização residual, dispositivo eletrônico e meio legível por computador não transitório. a presente invenção refere-se a um método implementado por computador para realizar a quantização residual, um dispositivo elétrico e um meio legível por computador não transitório. um exemplo dos métodos inclui realizar (1408) uma primeira quantização residual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quantizado. um segundo sinal residual de destino é gerado (1410) com base, pelo menos, no primeiro sinal residual quantizado e no primeiro sinal residual de destino. uma segunda quantização residual (1412) é realizada no segundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quantizado, onde a primeira taxa de bit é diferente da segunda taxa de bit.

Description

Relatório Descritivo da Patente de Invenção para "MÉTO-
DO IMPLEMENTADO POR COMPUTADOR PARA REALIZAR QUANTIZAÇÃO RESIDUAL, DISPOSITIVO ELETRÔNICO E MEIO LEGÍVEL POR COMPUTADOR NÃO TRANSITÓRIO". Campo técnico
[001] A presente invenção refere-se ao processamento de sinal e, mais especificamente, para melhorar a eficiência da codificação de sinal de áudio. Antecedentes
[002] Áudio de alta resolução (alta resolução), também conhecido como áudio de alta definição ou áudio HD, é um termo de marketing usado por alguns varejistas de música gravada e fornecedores de equipamentos de reprodução de som de alta fidelidade. Em seus ter- mos mais simples, áudio de alta resolução tende a se referir a arquivos de música que têm uma frequência de amostragem mais alta e/ou pro- fundidade de bits do que o disco compacto (CD) - que é especificado em 16 bits/44,1 kHz. O principal benefício alegado dos arquivos de áudio de alta resolução é uma qualidade de som superior em relação aos formatos de áudio compactados. Com mais informações sobre o arquivo a ser reproduzido, o áudio de alta resolução tende a apresen- tar mais detalhes e textura, aproximando os ouvintes da performance original.
[003] O áudio de alta resolução tem uma desvantagem: o tama- nho do arquivo. Um arquivo de alta resolução normalmente pode ter dezenas de megabytes de tamanho e algumas faixas podem consumir rapidamente o armazenamento do dispositivo. Embora o armazena- mento seja muito mais barato do que costumava ser, o tamanho dos arquivos ainda pode tornar o áudio de alta resolução complicado para transmitir por Wi-Fi ou rede móvel sem compressão. Sumário
[004] Em algumas implementações, o relatório descritivo descre- ve técnicas para melhorar a eficácia da codificação de sinal de áudio.
[005] Em uma primeira implementação, um método para realizar a quantização residual inclui: realizar uma primeira quantização resi- dual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quantizado; gerar um segundo sinal residual de destino com base, pelo menos, no primeiro sinal resi- dual quantizado e no primeiro sinal residual de destino; e realizar uma segunda quantização residual no segundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quanti- zado, em que a primeira taxa de bit é diferente da segunda taxa de bit.
[006] Em uma segunda implementação, um dispositivo eletrônico inclui: a armazenamento de memória não transitório compreendendo instruções, e um ou mais processadores de hardware em comunica- ção com o armazenamento de memória, em que um ou mais proces- sadores de hardware executam as instruções para: realizar uma pri- meira quantização residual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quantizado; gerar um segundo sinal residual de destino com base, pe- lo menos, no primeiro sinal residual quantizado e no primeiro sinal re- sidual de destino; e realizar uma segunda quantização residual no se- gundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quantizado, em que a primeira taxa de bit é diferente da segunda taxa de bit.
[007] Em uma terceira implementação, um meio legível por com- putador não transitório armazena instruções de computador para reali- zar quantização residual, que quando executadas por um ou mais pro- cessadores de hardware, fazem com que um ou mais processadores de hardware realizem as operações incluindo: realizar a primeira quan- tização residual on a primeiro sinal residual de destino at a primeira taxa de bit para gerar a primeiro sinal residual quantizado; gerar a se- gundo sinal residual de destino com base, pelo menos, no primeiro si- nal residual quantizado e no primeiro sinal residual de destino; e reali- zar a segunda quantização residual no segundo sinal residual de des- tino em uma segunda taxa de bit para gerar a segundo sinal residual quantizado, caracterizado pelo fato de que a primeira taxa de bit é dife- rente da segunda taxa de bit.
[008] As implementações descritas anteriormente são implemen- táveis usando um método implementado por computador; um meio le- gível por computador não transitório que armazena instruções legíveis por computador para executar o método implementado por computa- dor; e um sistema implementado por computador que compreende uma memória de computador acoplada de forma interoperável com um processador de hardware configurado para executar o método imple- mentado por computador e as instruções armazenadas no meio legível por computador não transitório.
[009] Os detalhes de uma ou mais modalidades do assunto deste relatório descritivo são apresentados nos desenhos anexos e na des- crição abaixo. Outras características, aspectos e vantagens do assun- to tornar-se-ão evidentes a partir da descrição, dos desenhos e das reivindicações. Breve descrição dos desenhos
[0010] A Figura 1 mostra uma estrutura de exemplo de um codifi- cador de L2HC (Codec de alta resolução de baixa complexidade e bai- xo atraso) de acordo com algumas implementações.
[0011] A Figura 2 mostra uma estrutura de exemplo de um decodi- ficador de L2HC de acordo com algumas implementações.
[0012] A Figura 3 mostra uma estrutura de exemplo de um codifi- cador de banda baixa-baixa (LLB) de acordo com algumas implemen- tações.
[0013] A Figura 4 mostra uma estrutura de exemplo de um decodi- ficador de LLB de acordo com algumas implementações.
[0014] A Figura 5 mostra uma estrutura de exemplo de um codifi- cador de banda baixa-alta (LHB) de acordo com algumas implementa- ções.
[0015] A Figura 6 mostra uma estrutura de exemplo de um decodi- ficador de (LHB) de acordo com algumas implementações.
[0016] A Figura 7 mostra uma estrutura de exemplo de um codifi- cador para sub-banda de banda alta-baixa (HLB) e/ou de banda alta- alta (HHB) de acordo com algumas implementações.
[0017] A Figura 8 mostra uma estrutura de exemplo de um decodi- ficador para sub-banda de HLB e/ou de HHB de acordo com algumas implementações.
[0018] A Figura 9 mostra uma estrutura espectral de exemplo de um sinal de pitch de acordo com algumas implementações.
[0019] A Figura 10 mostra um processo de exemplo de detecção de pitch alto de acordo com algumas implementações.
[0020] A Figura 11 é um fluxograma ilustrando um método de exemplo para realizar a ponderação perceptual de um sinal de pitch de acordo com algumas implementações.
[0021] A Figura 12 mostra uma estrutura de exemplo de um codifi- cador de quantização residual de acordo com algumas implementa- ções.
[0022] A Figura 13 mostra uma estrutura de exemplo de um deco- dificador de quantização residual de acordo com algumas implementa- ções.
[0023] A Figura 14 é um fluxograma ilustrando um método de exemplo para realizar a quantização residual para um sinal de acordo com algumas implementações.
[0024] A Figura 15 mostra um exemplo de um discurso em voz de acordo com algumas implementações.
[0025] A Figura 16 mostra um processo de exemplo para realizar o controle de predição de longo prazo (LTP) de acordo com algumas im- plementações.
[0026] A Figura 17 mostra um exemplo de espectro de um sinal de áudio de acordo com algumas implementações.
[0027] A Figura 18 é um fluxograma ilustrando um método de exemplo para realizar a predição de longo prazo (LTP) de acordo com algumas implementações.
[0028] A Figura 19 é um fluxograma ilustrando um método de exemplo de quantização de parâmetros de codificação preditiva linear (LPC) de acordo com algumas implementações.
[0029] A Figura 20 mostra um exemplo de espectro de um sinal de áudio de acordo com algumas implementações.
[0030] A Figura 21 é um diagrama ilustrando uma estrutura de exemplo de um dispositivo eletrônico de acordo com algumas imple- mentações.
[0031] Números de referência e designações semelhantes nos vá- rios desenhos indicam elementos semelhantes. Descrição detalhada
[0032] Deve ser entendido desde o início que, embora uma im- plementação ilustrativa de uma ou mais modalidades seja fornecida abaixo, os sistemas e/ou métodos descritos podem ser implementados usando qualquer número de técnicas, sejam atualmente conhecidas ou existentes. A invenção não deve de forma alguma ser limitada às implementações ilustrativas, desenhos e técnicas ilustradas abaixo, incluindo os projetos e implementações exemplares ilustrados e des- critos neste documento, mas pode ser modificada dentro do escopo das reivindicações anexas, juntamente com seu escopo completo de equivalentes.
[0033] Áudio de alta resolução (alta resolução), também conhecido como áudio de alta definição ou áudio HD, é um termo de marketing usado por alguns varejistas de música gravada e fornecedores de equipamentos de reprodução de som de alta fidelidade. O áudio de alta resolução lentamente, mas seguramente, atingiu o mainstream, graças ao lançamento de mais produtos, serviços de streaming e até mesmo smartphones que suportam os padrões de alta resolução. No entanto, ao contrário do vídeo de alta definição, não existe um único padrão universal para áudio de alta resolução. O Digital Entertainment Group, a Consumer Electronics Association e a The Recording Aca- demy, juntamente com as gravadoras, definiram formalmente o áudio de alta resolução como: “Áudio sem perdas que é capaz de reproduzir toda a gama de som de gravações que foram masterizadas de melhor do que Fontes de música com qualidade de CD”. Em seus termos mais simples, áudio de alta resolução tende a se referir a arquivos de música que têm uma frequência de amostragem mais alta e/ou pro- fundidade de bits do que o disco compacto (CD) - que é especificado em 16 bits/44,1 kHz. A frequência de amostragem (ou taxa de amos- tragem) refere-se ao número de vezes que as amostras do sinal são obtidas por segundo durante o processo de conversão analógico para digital. Quanto mais bits houver, mais precisamente o sinal pode ser medido em primeira instância. Portanto, passar de 16 bits para 24 bits na profundidade de bits pode proporcionar um salto perceptível na qualidade. Arquivos de áudio de alta resolução geralmente usam uma frequência de amostragem de 96 kHz (ou até muito mais alta) a 24 bits. Em alguns casos, uma frequência de amostragem de 88,2 kHz também pode ser usada para arquivos de áudio de alta resolução. Também existem gravações de 44,1 kHz/24 bits que são rotuladas de áudio HD.
[0034] Existem vários formatos de arquivo de áudio de alta resolu-
ção com seus próprios requisitos de compatibilidade. Os formatos de arquivo capazes de armazenar áudio de alta resolução incluem os po- pulares formatos FLAC (Free Lossless Audio Codec) e ALAC (Apple Lossless Audio Codec), ambos compactados, mas de uma forma que significa que, em teoria, nenhuma informação é perdida. Outros forma- tos incluem os formatos WAV e AIFF não compactados, DSD (o forma- to usado para Super Audio CDs) e o mais recente MQA (Master Qua- lity Authenticated). Abaixo está uma análise dos principais formatos de arquivo:
[0035] WAV (alta resolução): O formato padrão em que todos os CDs são codificados. Excelente qualidade de som, mas não compac- tado, o que significa tamanhos de arquivo enormes (especialmente para arquivos de alta resolução). Ele tem suporte de metadados pobre (ou seja, capa do álbum, artista e informações do título da música).
[0036] AIFF (alta resolução): Alternativa da Apple para WAV, com melhor suporte de metadados. É sem perdas e não compactado (ta- manhos de arquivo tão grandes), mas não muito popular.
[0037] FLAC (alta resolução): Este formato de compressão sem perdas suporta taxas de amostragem de alta resolução, ocupa cerca de metade do espaço de WAV e armazena metadados. É isento de royalties e amplamente suportado (embora não seja da Apple) e é considerado o formato preferido para download e armazenamento de álbuns em alta resolução.
[0038] ALAC (alta resolução): O formato de compressão sem per- das da própria Apple também faz alta resolução, armazena metadados e ocupa metade do espaço de WAV. Uma alternativa compatível com iTunes e iOS para FLAC.
[0039] DSD (alta resolução): O formato de bit único usado para Super Audio CDs. Ele vem em variedades de 2,8 MHz, 5,6 MHz e 11,2 MHz, mas não é amplamente suportado.
[0040] MQA (alta resolução): Um formato de compactação sem perdas que empacota arquivos de alta resolução com mais ênfase no domínio do tempo. Ele é usado para streaming de alta resolução do Tidal Masters, mas tem suporte limitado para vários produtos.
[0041] MP3 (não alta resolução): O popular formato compactado com perdas garante um tamanho de arquivo pequeno, mas está longe de ser a melhor qualidade de som. Conveniente para armazenar músi- ca em smartphones e iPods, mas não suporta alta resolução.
[0042] AAC (não alta resolução): Uma alternativa aos MP3s, com perdas e compactados, mas soa melhor. Usado para downloads do iTunes, streaming do Apple Music (a 256 kbps) e streaming do YouTu- be.
[0043] O principal benefício alegado dos arquivos de áudio de alta resolução é uma qualidade de som superior em relação aos formatos de áudio compactados. Downloads de sites como Amazon e iTunes e serviços de streaming como Spotify usam formatos de arquivo com- pactados com taxas de bits relativamente baixas, como arquivos AAC de 256 kbps no Apple Music e streams Ogg Vorbis de 320 kbps no Spotify. O uso de compactação com perdas significa que os dados são perdidos no processo de codificação, o que, por sua vez, significa que a resolução é sacrificada por uma questão de conveniência e arquivos menores. Isso afeta a qualidade do som. Por exemplo, o MP3 de mais alta qualidade tem uma taxa de bits de 320 kbps, enquanto um arquivo de 24 bits/192 kHz tem uma taxa de dados de 9216 kbps. Os CDs de música têm 1411 kbps. Os arquivos de alta resolução de 24 bits/96 kHz ou 24 bits/192 kHz devem, portanto, reproduzir mais de perto a qualidade do som com que os músicos e engenheiros estavam traba- lhando no estúdio. Com mais informações sobre o arquivo a ser repro- duzido, o áudio de alta resolução tende a apresentar mais detalhes e textura, aproximando os ouvintes da performance original - desde que o sistema de reprodução seja transparente o suficiente.
[0044] O áudio de alta resolução tem uma desvantagem: o tama- nho do arquivo. Um arquivo de alta resolução normalmente pode ter dezenas de megabytes de tamanho e algumas faixas podem consumir rapidamente o armazenamento do dispositivo. Embora o armazena- mento seja muito mais barato do que costumava ser, o tamanho dos arquivos ainda pode tornar o áudio de alta resolução complicado para transmitir por Wi-Fi ou rede móvel sem compressão.
[0045] Há uma grande variedade de produtos que podem reprodu- zir e suportar áudio de alta resolução. Tudo depende de quão grande ou pequeno é o sistema, quanto é o orçamento e qual método é mais usado para ouvir as músicas. Alguns exemplos de produtos com su- porte para áudio de alta resolução são descritos a seguir. Smartphones
[0046] Os smartphones estão cada vez mais oferecendo suporte para reprodução em alta resolução. No entanto, isso é restrito aos mo- delos principais do Android, como o atual Samsung Galaxy S9 e S9+ e o Note 9 (todos eles suportam arquivos DSD) e o Xperia XZ3 da Sony. Os telefones com suporte de alta resolução V30 e V30S ThinQ da LG são os que oferecem compatibilidade MQA, enquanto os telefones S9 da Samsung até suportam Dolby Atmos. Até agora, os iPhones da Ap- ple não suportam áudio de alta resolução fora da caixa, embora exis- tam maneiras de contornar isso usando o aplicativo certo e, em segui- da, conectando um conversor digital para analógico (DAC) ou usando fones de ouvido Lightning com o conector Lightning de iPhones. Tablets
[0047] Tablets de alta resolução também existem e incluem produ- tos como o Samsung Galaxy Tab S4. No MWC 2018, uma série de novos modelos compatíveis foram lançados, incluindo a linha M5 da Huawei e o intrigante tablet Granbeat da Onkyo.
Players de música portáteis
[0048] Como alternativa, existem leitores de música portáteis de alta resolução, como vários Sony Walkmans e leitores portáteis premi- ados da Astell & Kern. Esses reprodutores de música oferecem mais espaço de armazenamento e qualidade de som muito melhor do que um smartphone multitarefa. E, embora esteja longe de ser convencio- nalmente portátil, o impressionante e caro reprodutor de música digital Sony DMP-Z1 vem com talentos de alta resolução e digital de fluxo direto (DSD). Desktop
[0049] Para uma solução de desktop, o laptop (Windows, Mac, Li- nux) é uma fonte primária para armazenar e tocar música de alta reso- lução (afinal, é no presente documento que as músicas de sites de download de alta resolução são baixadas). DACs
[0050] Um USB ou DAC de desktop (como o Cyrus soundKey ou Chord Mojo) é uma boa maneira de obter ótima qualidade de som de arquivos de alta resolução armazenados no computador ou smartpho- ne (cujos circuitos de áudio não tendem a ser otimizados para qualida- de de som). Basta conectar um conversor digital para analógico (DAC) decente entre a fonte e os fones de ouvido para obter um aumento sô- nico instantâneo.
[0051] Os arquivos de áudio não compactados codificam o sinal de entrada de áudio completo em um formato digital capaz de armazenar a carga total dos dados de entrada. Eles oferecem a mais alta qualida- de e capacidade de arquivamento ao custo de arquivos grandes, proi- bindo seu uso generalizado em muitos casos. A codificação sem per- das é o meio termo entre não compactado e com perdas. Ele concede qualidade de áudio semelhante ou igual a arquivos de áudio não com- pactados em tamanhos reduzidos. Os codecs sem perdas conseguem isso comprimindo o áudio de entrada de uma forma não destrutiva na codificação, antes de restaurar as informações descompactadas na decodificação. Os tamanhos dos arquivos de áudio codificado sem perdas ainda são muito grandes para muitas aplicações. Os arquivos com perdas são codificados de forma diferente dos arquivos descom- pactados ou sem perdas. A função essencial da conversão analógica para digital permanece a mesma nas técnicas de codificação com per- das. Com perdas diverge de não compactado. Codecs com perdas jo- gam fora uma quantidade considerável de informações contidas nas ondas sonoras originais enquanto tentam manter a qualidade subjetiva de áudio o mais próximo possível das ondas sonoras originais. Por causa disso, os arquivos de áudio com perdas são muito menores do que os não compactados, permitindo o uso em cenários de áudio ao vivo. Se não houver diferença de qualidade subjetiva entre os arquivos de áudio com perdas e os não compactados, a qualidade dos arquivos de áudio com perdas pode ser considerada “transparente”. Recente- mente, vários codecs de áudio com perdas de alta resolução foram desenvolvidos, entre os quais LDAC (Sony) e AptX (Qualcomm) são os mais populares. LHDC (Savitech) também é um deles.
[0052] Os consumidores e as empresas de áudio de última gera- ção têm falado mais sobre o áudio Bluetooth do que nunca. Seja em fones de ouvido sem fio, fones de ouvido com viva-voz, automotivo ou residencial, há um número crescente de casos de uso para áudio Blue- tooth de boa qualidade. Diversas empresas oferecem soluções que excedem o desempenho razoável das soluções Bluetooth prontas para uso. O aptX da Qualcomm já tem uma tonelada de telefones Android cobertos, mas a gigante da multimídia Sony tem sua própria solução de ponta chamada LDAC. Essa tecnologia estava disponível anterior- mente apenas na linha de aparelhos Xperia da Sony, mas com o lan- çamento do Android 8.0 Oreo, o codec Bluetooth estará disponível como parte do código AOSP principal para que outros OEMS imple- mentem, se assim o desejarem.
No nível mais básico, o LDAC suporta a transferência de arquivos de áudio de 24 bits/96 kHz (alta resolução) via Bluetooth.
O codec concorrente mais próximo é o aptX HD da Qualcomm, que suporta dados de áudio de 24 bits/48 kHz.
O LDAC vem com três tipos diferentes de modo de conexão - prioridade de qualidade, normal e prioridade de conexão.
Cada um deles oferece uma taxa de bits diferente, pesando 990 kbps, 660 kbps e 330 kbps, respectivamente.
Portanto, dependendo do tipo de conexão disponível, existem vários níveis de qualidade.
É claro que as taxas de bits mais baixas do LDAC não vão fornecer a qualidade total de 24 bits/96 kHz que o LDAC possui.
LDAC é uma tecnologia de codificação de áudio desenvolvida pela Sony, que permite streaming de áudio em conexões Bluetooth de até 990 kbit/s a 24 bits/96 kHz.
Ele é usado por vários produtos Sony, incluindo fones de ouvido, smartphones, reprodutores de mídia portáteis, alto-falantes ativos e home theaters.
LDAC é um codec com perdas, que usa um esquema de codificação baseado no MDCT para fornecer compactação de dados mais eficiente.
O principal concorrente do LDAC é a tecnologia aptX-HD da Qualcomm.
Codec de sub-banda de baixa complexidade (SBC) padrão de alta qualidade com relógios de no máximo 328 kbps, aptX da Qualcomm em 352 kbps e aptX HD em 576 kbps.
No papel, então, o LDAC de 990 kbps transmite muito mais dados do que qualquer outro codec Bluetooth existente.
E mesmo a configuração de prioridade de conexão de baixo custo concorre com SBC e aptX, que atenderá àqueles que transmi- tem música dos serviços mais populares.
Existem duas partes princi- pais no LDAC da Sony.
A primeira parte é atingir uma velocidade de transferência Bluetooth alta o suficiente para atingir 990 kbps, e a se- gunda parte é espremer dados de áudio de alta resolução nesta largu- ra de banda com uma perda mínima de qualidade.
O LDAC usa a tec-
nologia opcional Taxa de Dados Aprimorada (EDR) do Bluetooth para aumentar as velocidades de dados fora dos limites normais do perfil A2DP (Perfil de Distribuição de Áudio Avançado). Mas isso depende do hardware. As velocidades EDR geralmente não são usadas por perfis de áudio A2DP.
[0053] O algoritmo aptX original foi baseado nos princípios da mo- dulação por código de pulso diferencial adaptativo no domínio do tem- po (ADPCM) sem técnicas de mascaramento auditivo psicoacústico. A codificação de áudio aptX da Qualcomm foi introduzida pela primeira vez no mercado comercial como um produto semicondutor, um circuito integrado DSP programado personalizado com o nome de peça APTX100ED, que foi inicialmente adotado por fabricantes de equipa- mentos de automação de transmissão que exigiam um meio de arma- zenar áudio com qualidade de CD em um disco rígido de computador drive de disco para playout automático durante um programa de rádio, por exemplo, substituindo assim a tarefa do disc jockey. Desde sua introdução comercial no início de 1990, a gama de algoritmos aptX pa- ra compressão de dados de áudio em tempo real continuou a se ex- pandir com a propriedade intelectual tornando-se disponível na forma de software, firmware e hardware programável para áudio profissional, televisão e transmissão de rádio, e eletrônicos de consumo, especial- mente aplicativos em áudio sem fio, áudio sem fio de baixa latência para jogos e vídeo e áudio sobre IP. Além disso, o codec aptX pode ser usado em vez de SBC (codificação de sub-banda), o esquema de codificação de sub-banda para streaming de áudio estéreo/mono com perdas exigido pelo Bluetooth SIG para A2DP de Bluetooth, o pessoal sem fio de curto alcance padrão de rede de área. AptX é compatível com periféricos Bluetooth de alto desempenho. Hoje, tanto o aptX pa- drão quanto o aptX aprimorado (E-aptX) são usados em hardware de codec de áudio ISDN e IP de vários fabricantes de equipamentos de transmissão. Uma adição à família aptX na forma de aptX Live, ofere- cendo compressão de até 8: 1, foi introduzida em 2007. E aptX-HD, um codec de áudio adaptável com perdas, mas escalável, foi anuncia- do em abril de 2009. O AptX foi anteriormente denominado apt-X até ser adquirido pela CSR plc em 2010. A CSR foi posteriormente adqui- rida pela Qualcomm em agosto de 2015. O codec de áudio aptX é usado para aplicações de áudio sem fio automotivas e de consumidor, notavelmente o streaming em tempo real de áudio estéreo com perdas através da conexão/emparelhamento Bluetooth A2DP entre um dispo- sitivo "fonte" (como um smartphone, tablet ou laptop) e um " coletor ”(por exemplo, um alto-falante estéreo Bluetooth, headset ou fones de ouvido). A tecnologia deve ser incorporada tanto no transmissor quan- to no receptor para derivar os benefícios sônicos da codificação de áudio aptX sobre a codificação de sub-banda padrão (SBC) exigida pelo padrão Bluetooth. O aptX aprimorado fornece codificação em ta- xas de compressão de 4: 1 para aplicações de transmissão de áudio profissional e é adequado para AM, FM, DAB, HD Radio.
[0054] O aptX aprimorado oferece suporte a profundidades de 16, 20 ou 24 bits. Para amostras de áudio em 48 kHz, a taxa de bits para E-aptX é 384 kbit/s (canal duplo). AptX-HD tem taxa de bits de 576 kbit/s. Suporta áudio de alta definição com taxas de amostragem de até 48 kHz e resoluções de amostragem de até 24 bits. Ao contrário do que o nome sugere, o codec ainda é considerado com perdas. No en- tanto, ele permite um esquema de codificação “híbrido” para aplicati- vos em que as taxas médias ou de pico de dados compactados devem ser limitados a um nível restrito. Isso envolve a aplicação dinâmica de codificação “quase sem perdas” para as seções de áudio em que a codificação completamente sem perdas é impossível devido a restri- ções de largura de banda. A codificação “quase sem perda” mantém uma qualidade de áudio de alta definição, retendo frequências de áu-
dio de até 20 kHz e uma faixa dinâmica de pelo menos 120 dB. Seu principal concorrente é o codec LDAC desenvolvido pela Sony. Outro parâmetro escalável dentro do aptX-HD é a latência de codificação. Ele pode ser negociado dinamicamente em relação a outros parâme- tros, como níveis de compressão e complexidade computacional.
[0055] LHDC significa codec de áudio de baixa latência e alta defi- nição e é anunciado pela Savitech. Comparado ao formato de áudio SBC Bluetooth, o LHDC pode permitir mais de 3 vezes os dados transmitidos para fornecer o áudio sem fio mais realista e de alta defi- nição e não atingir mais disparidade de qualidade de áudio entre dis- positivos de áudio sem fio e com fio. O aumento dos dados transmiti- dos permite ao usuário experimentar mais detalhes e um melhor cam- po sonoro, e mergulhar na emoção da música. No entanto, mais de 3 vezes a taxa de dados SBC pode ser muito alta para muitas aplica- ções práticas.
[0056] A Figura 1 mostra uma estrutura de exemplo de um codifi- cador de L2HC (Codec de alta resolução de baixa complexidade e bai- xo atraso) 100 de acordo com algumas implementações. A Figura 2 mostra uma estrutura de exemplo de um decodificador de L2HC 200 de acordo com algumas implementações. Geralmente, o L2HC pode oferecer qualidade “transparente” a uma taxa de bits razoavelmente baixa. Em alguns casos, o codificador 100 e o decodificador 200 po- dem ser implementados em um dispositivo de codec de sinal. Em al- guns casos, o codificador 100 e o decodificador 200 podem ser imple- mentados em dispositivos diferentes. Em alguns casos, o codificador 100 e o decodificador 200 podem ser implementados em quaisquer dispositivos adequados. Em alguns casos, o codificador 100 e o deco- dificador 200 podem ter o mesmo atraso de algoritmo (por exemplo, o mesmo tamanho de quadro ou o mesmo número de subtramas). Em alguns casos, o tamanho do sobrechassi nas amostras pode ser corri-
gido. Por exemplo, se a taxa de amostragem for 96 kHz ou 48 kHz, o tamanho da subtrama pode ser 192 ou 96 amostras. Cada quadro po- de ter 1, 2, 3, 4 ou 5 subquadros, que correspondem a atrasos de al- goritmo diferentes. Em alguns exemplos, quando a taxa de amostra- gem de entrada do codificador 100 é 96 kHz, a taxa de amostragem de saída do decodificador 200 pode ser 96 kHz ou 48 kHz. Em alguns exemplos, quando a taxa de amostragem de entrada da taxa de amos- tragem é 48 kHz, a taxa de amostragem de saída do decodificador 200 também pode ser 96 kHz ou 48 kHz. Em alguns casos, a banda alta é adicionada artificialmente se a taxa de amostragem de entrada do co- dificador 100 for 48 kHz e a taxa de amostragem de saída do decodifi- cador 200 for 96 kHz.
[0057] Em alguns exemplos, quando a taxa de amostragem de en- trada do codificador 100 é 88,2 kHz, a taxa de amostragem de saída do decodificador 200 pode ser 88,2 kHz ou 44,1 kHz. Em alguns exemplos, quando a taxa de amostragem de entrada do codificador 100 é 44,1 kHz, a taxa de amostragem de saída do decodificador 200 também pode ser 88,2 kHz ou 44,1 kHz. Da mesma forma, a banda alta também pode ser adicionada artificialmente quando a taxa de amostragem de entrada do codificador 100 é 44,1 kHz e a taxa de amostragem de saída do decodificador 200 é 88,2 kHz. É o mesmo codificador para codificar o sinal de entrada de 96 kHz ou 88,2 kHz. É também o mesmo codificador para codificar o sinal de entrada de 48 kHz ou 44,1 kHz.
[0058] Em alguns casos, no codificador de L2HC 100, a profundi- dade de bits do sinal de entrada pode ser 32b, 24b ou 16b. No decodi- ficador de L2HC 200, a profundidade de bits do sinal de saída também pode ser 32b, 24b ou 16b. Em alguns casos, a profundidade de bits do codificador no codificador 100 e a profundidade de bits do decodifica- dor no decodificador 200 podem ser diferentes.
[0059] Em alguns casos, um modo de codificação (por exemplo, ABR_mode) pode ser definido no codificador 100 e pode ser modifica- do em tempo real durante a execução. Em alguns casos, ABR_mode = 0 indica alta taxa de bits, ABR_mode = 1 indica taxa de bits média e ABR_mode = 2 indica baixa taxa de bits. Em alguns casos, as infor- mações do modo_ABR podem ser enviadas para o decodificador 200 por meio do canal de fluxo de bits gastando 2 bits. O número padrão de canais pode ser estéreo (dois canais), pois é para aplicativos de fone de ouvido Bluetooth. Em alguns exemplos, a taxa de bits média para ABR_mode = 2 pode ser de 370 a 400 kbps, a taxa de bits média para ABR_mode = 1 pode ser de 450 a 550 kbps e a taxa de bits mé- dia para ABR_mode = 0 pode ser de 550 a 710 kbps. Em alguns ca- sos, a taxa de bits instantânea máxima para todos os casos/modos pode ser inferior a 990 kbps.
[0060] Como mostrado na Figura 1, o codificador 100 inclui um filtro de pré-ênfase 104, um filtro de espelho de quadratura (QMF) banco de filtros de análise 106, um codificador de banda baixa-baixa (LLB) 118, um codificador de banda baixa-alta (LHB) 120, a codificador de banda alta baixa (HLB) 122, um codificador de banda alta-alta (HHB) 123 e um multiplexador 126. O sinal digital de entrada original 102 é primeiro pré-enfatizado pelo filtro de pré-ênfase 104. Em alguns casos, o pré-filtro de ênfase 104 pode ser um filtro passa-alta constan- te. O filtro de pré-ênfase 104 é útil para a maioria dos sinais de músi- ca, pois a maioria dos sinais de música contém energias de banda de baixa frequência muito mais altas do que energias de banda de alta frequência. O aumento das energias da banda de alta frequência pode aumentar a precisão de processamento dos sinais da banda de alta frequência.
[0061] A saída do filtro de pré-ênfase 104 passa através do banco de filtro de análise QMF 106 para gerar quatro sinais de sub-banda -
sinal de LLB 110, sinal de LHB 112, sinal de HLB 114 e sinal de HHB
116. Em um exemplo, o sinal de entrada original é gerado a uma taxa de amostragem de 96 kHz. Neste exemplo, o sinal de LLB 110 inclui uma sub-banda de 0-12 kHz, o sinal de LHB 112 inclui uma sub-banda de 12-24 kHz, o sinal de HLB 114 inclui uma sub-banda de 24-36 kHz e o sinal de HHB 116 inclui uma sub-banda de 36-48 kHz. Como mos- trado, cada um dos quatro sinais de sub-banda é codificado respecti- vamente pelo codificador de LLB 118, codificador de LHB 120, codifi- cador de HLB 122 e codificador de HHB 124 para gerar um sinal de sub-banda codificado. Os quatro codificados que podem ser multiple- xados pelo multiplexador 126 para gerar um sinal de áudio codificado.
[0062] Como mostrado na Figura 2, o decodificador 200 inclui um decodificador de LLB 204, um decodificador de LHB 206, um decodifi- cador de HLB 208, um decodificador de HHB 210, um banco de filtros de síntese QMF 212, um componente pós-processamento 214 e um filtro de redução de ênfase 216. Em alguns casos, cada um do decodi- ficador de LLB 204, decodificador de LHB 206, decodificador de HLB 208 e decodificador de HHB 210 pode receber um sinal de sub-banda codificado do canal 202, respectivamente, e gerar um sinal de sub- banda decodificado. Os sinais de sub-banda decodificados dos quatro decodificadores 204-210 podem ser somados de volta através do ban- co de filtros de síntese QMF 212 para gerar um sinal de saída. O sinal de saída pode ser pós-processado pelo componente pós- processamento 214, se necessário e, em seguida, enfatizado pelo filtro de redução de ênfase 216 para gerar um sinal de áudio decodificado
218. Em alguns casos, o filtro de redução de ênfase 216 pode ser um filtro constante e pode ser um filtro inverso do filtro de ênfase 104. Em um exemplo, o sinal de áudio decodificado 218 pode ser gerado pelo decodificador 200 na mesma taxa de amostragem que o sinal de áudio de entrada (por exemplo, sinal de áudio 102) do codificador 100. Neste exemplo, o sinal de áudio decodificado 218 é gerado a uma taxa de amostragem de 96 kHz.
[0063] A Figura 3 e a Figura 4 ilustram estruturas de exemplo de um codificador de LLB 300 e um decodificador de LLB 400 respecti- vamente. Como mostrado na Figura 3, o codificador de LLB 300 inclui um componente de detecção de inclinação espectral alta 304, um filtro de inclinação 306, um componente de análise de codificação preditiva linear (LPC) 308, um filtro LPC inverso 310, um componente de condi- ção de predição de longo prazo (LTP) 312, um componente de detec- ção de pitch alto 314, um filtro de ponderação 316, um componente de contribuição de rápida LTP 318, uma unidade de função de adição 320, um componente de controle da taxa de bit 322, um componente de quantização residual inicial 324, um componente de ajuste de taxa de bit 326, e um componente de otimização de rápida quantização
328.
[0064] Como mostrado na Figura 3, o sinal de sub-banda de LLB 302 primeiro passa através do filtro de inclinação 306 que é controlado pelo componente de detecção de inclinação espectral 304. Em alguns casos, um sinal de LLB filtrado por inclinação é gerado pelo filtro de inclinação 306. O sinal de LLB filtrado por inclinação pode então ser analisado por LPC pelo componente de análise de LPC 308 para gerar parâmetros de filtro LPC na sub-banda de LLB. Em alguns casos, os parâmetros do filtro LPC podem ser quantizados e enviados para o decodificador de LLB 400. O filtro LPC inverso 310 pode ser usado pa- ra filtrar o sinal de LLB filtrado por inclinação e gerar um sinal residual de LLB. Neste domínio de sinal residual, o filtro de ponderação 316 é adicionado para sinal de pitch alto. Em alguns casos, o filtro de ponde- ração 316 pode ser ligado ou desligado dependendo de uma detecção de tom alto pelo componente de detecção de tom alto 314, cujo deta- lhe será explicado em maiores detalhes posteriormente. Em alguns casos, um sinal residual de LLB ponderado pode ser gerado pelo filtro de ponderação 316.
[0065] Como mostrado na Figura 3, o sinal residual de LLB ponde- rado torna-se um sinal de referência. Em alguns casos, quando existe forte periodicidade no sinal original, uma contribuição de LTP (Predi- ção de Longo Prazo) pode ser introduzida por um componente de con- tribuição de LTP rápida 318 com base em uma condição de LTP 312. No codificador 300, a contribuição de LTP pode ser subtraída do sinal residual de LLB ponderado pela unidade de função de adição 320 para gerar um segundo sinal residual de LLB ponderado que se torna um sinal de entrada para o componente de quantização residual de LLB inicial 324. Em alguns casos, um sinal de saída do componente de quantização residual de LLB inicial 324 pode ser processado pelo componente de otimização de quantização rápida 328 para gerar um sinal residual de LLB quantizado 330. Em alguns casos, o sinal residu- al de LLB quantizado 330 juntamente com os parâmetros de LTP (quando existe LTP) pode ser enviado para o decodificador de LLB 400 através de um canal de fluxo de bits.
[0066] A Figura 4 mostra uma estrutura de exemplo do decodifica- dor de LLB 400. Como mostrado, o decodificador de LLB 400 inclui um componente residual quantizado 406, um componente de contribuição de rápida LTP 408, um componente de sinalizador de comutação de LTP 410, uma unidade de função de adição 414, um filtro de pondera- ção inversa 416, um componente de sinalizador de pitch alto 420, um filtro LPC 422, um filtro de inclinação inversa 424, e um componente de sinalizador de inclinação espectral alta 428. Em alguns casos, um sinal residual quantizado do componente residual quantizado 406 um sinal de contribuição de LTP do componente de contribuição de rápida LTP 408 pode ser adicionar junto pela unidade de função de adição 414 para gerar um sinal residual de LLB ponderado como um sinal de entrada ao filtro de ponderação inversa 416.
[0067] Em alguns casos, o filtro de ponderação inversa 416 pode ser usado para remover a ponderação e recuperar a achatamento es- pectral do sinal de LLB residual quantizado. Em alguns casos, um sinal residual de LLB recuperado pode ser gerado pelo filtro de ponderação inversa 416. O sinal residual de LLB recuperado pode ser novamente filtrado pelo filtro LPC 422 para gerar o sinal de LLB no domínio de si- nal. Em alguns casos, se um filtro de inclinação (por exemplo, filtro de inclinação 306) existir no codificador de LLB 300, o sinal de LLB no decodificador de LLB 400 pode ser filtrado pelo filtro de inclinação in- versa 424 controlado pelo componente de sinalizador de bloco espec- tral alto 428. Em alguns casos, um sinal de LLB decodificado 430 pode ser gerado pelo filtro de inclinação inversa 424.
[0068] A Figura 5 e a Figura 6 ilustram estruturas de exemplo de um codificador de LHB 500 e um decodificador de LHB 600. Como mostrado na Figura 5, o codificador de LHB 500 inclui um componente de análise de LPC 504, um filtro LPC inverso 506, um componente de controle da taxa de bit 510, um componente de quantização residual inicial 512, e um componente de otimização de rápida quantização
514. Em alguns casos, um sinal de sub-banda de LHB 502 pode ser analisado por LPC pelo componente de análise de LPC 504 para gerar parâmetros de filtro LPC na sub-banda de LHB. Em alguns casos, os parâmetros de filtro LPC podem ser quantizados e enviados ao decodi- ficador de (LHB) 600. O sinal de sub-banda de LHB 502 pode ser fil- trado pelo filtro LPC inverso 506 no codificador 500. Em alguns casos, um sinal residual de LHB pode ser gerado pelo filtro LPC inverso 506. O sinal residual de LHB, que se torna um sinal de entrada para quanti- zação residual de LHB, pode ser processado pelo componente de quantização residual inicial 512 e pelo componente de otimização de rápida quantização 514 para gerar um sinal residual quantizado de
LHB 516. Em alguns casos, o sinal residual quantizado de LHB 516 pode ser enviado ao decodificador de (LHB) 600 subsequentemente. Como mostrado na Figura 6, o residual quantizado 604 obtido dos bits 602 pode ser processado pelo filtro LPC 606 para sub-banda de LHB para gerar o sinal de LHB decodificado 608.
[0069] A Figura 7 e a Figura 8 ilustram estruturas de exemplo de um codificador 700 e um decodificador 800 para sub-bandas de HLB e/ou de HHB. Como mostrado, o codificador 700 inclui um componente de análise de LPC 704, um filtro LPC inverso 706, um componente de comutação de taxa de bit 708, um componente de controle da taxa de bit 710, um componente residual de quantização 712, e um componen- te de quantização de envelope de energia 714. Geralmente, ambas a HLB e a HHB estão localizadas na área de frequência relativamente alta. Em alguns casos, elas são codificadas e decodificadas em duas possíveis formas. Por exemplo, se a taxa de bit for alta suficiente (por exemplo, mais alta do que 700 kbps para codificação estéreo de 96 kHz/24-bits), elas podem ser codificadas e decodificadas como LHB. Em um exemplo, o sinal de sub-banda de HLB ou HHB 702 pode ser analisado por LPC pelo componente de análise de LPC 704 para gerar parâmetros de filtro LPC na sub-banda de HLB ou HHB. Em alguns casos, os parâmetros de filtro LPC podem ser quantizados e enviados ao decodificador de HLB ou HHB 800. O sinal de sub-banda de HLB ou HHB 702 pode ser filtrado pelo filtro LPC inverso 706 para gerar um sinal residual de HLB ou HHB. O sinal residual de HLB ou HHB, que se torna um sinal de destino para a quantização residual, pode ser processado pelo componente residual de quantização 712 para gerar um sinal residual quantizado de HLB ou HHB 716. O sinal residual quantizado de HLB ou HHB 716 pode ser subsequentemente enviado ao lado do decodificador (por exemplo, decodificador 800) e processa- do pelo decodificador residual 806 e filtro LPC 812 para gerar sinal de
HLB ou HHB decodificado 814.
[0070] Em alguns casos, se a taxa de bit for relativamente baixa (por exemplo, menor do que 500 kbps para codificação estéreo de 96 kHz/24-bits), parâmetros do filtro LPC gerado pelo componente de análise de LPC 704 para sub-bandas de HLB ou HHB podem ser ain- da quantizados e enviados ao lado do decodificador (por exemplo, de- codificador 800). Entretanto, o sinal residual de HLB ou HHB pode ser gerado sem desperdiçar qualquer bit, e apenas o envelope de energia de domínio de tempo do sinal residual é quantizado e enviado ao de- codificador com taxa de bit muito baixa (por exemplo, menor do que 3 kbps para codificar o envelope de energia). Em um exemplo, o com- ponente de quantização de envelope de energia 714 pode receber o sinal residual de HLB ou HHB do filtro LPC inverso e gerar um sinal de saída que pode ser subsequentemente enviado ao decodificador 800. Então, o sinal de saída do codificador 700 pode ser processado pelo envelope de energia decodificador 808 e o componente de geração residual 810 para gerar um sinal de entrada ao filtro LPC 812. Em al- guns casos, o filtro LPC 812 pode receber um sinal residual de HLB ou HHB do componente de geração residual 810 e gerar sinal de HLB ou HHB decodificado 814.
[0071] A Figura 9 mostra uma estrutura espectral de exemplo 900 de um sinal de pitch. Geralmente, o sinal de fala normal raramente tem uma estrutura espectral relativamente alta. No entanto, sinais de músi- ca e sinais de voz cantados geralmente contêm uma estrutura espec- tral de pitch alto. Como mostrado, a estrutura espectral 900 inclui uma primeira frequência harmônica F0 que é relativamente mais alta (por exemplo, F0> 500 Hz) e um nível de espectro de fundo que é relativa- mente mais baixo. Neste caso, um sinal de áudio com a estrutura es- pectral 900 pode ser considerado como um sinal de pitch alto. No caso de um sinal de pitch alto, o erro de codificação entre 0 Hz e F0 pode ser facilmente ouvido devido à falta de efeito de mascaramento de au- dição. O erro (por exemplo, um erro entre F1 e F2) pode ser mascara- do por F1 e F2, desde que as energias de pico de F1 e F2 estejam corretas. No entanto, se a taxa de bits não for alta o suficiente, os er- ros de codificação não podem ser evitados.
[0072] Em alguns casos, encontrar um atraso correto de tom curto (tom alto) na LTP pode ajudar a melhorar a qualidade do sinal. No en- tanto, pode não ser suficiente para alcançar uma qualidade “transpa- rente”. A fim de melhorar a qualidade do sinal de forma robusta, um filtro de ponderação adaptativo pode ser introduzido, o que realça as frequências muito baixas e reduz os erros de codificação em frequên- cias muito baixas ao custo de aumentar os erros de codificação em frequências mais altas. Em alguns casos, o filtro de ponderação adap- tável (por exemplo, filtro de ponderação 316) pode ser um filtro de polo de uma ordem como abaixo: , e o filtro de ponderação inversa (por exemplo, filtro de ponderação in- versa 416) pode ser um filtro de ordem zero como abaixo: .
[0073] Em alguns casos, o filtro de ponderação adaptável pode ser mostrado para melhorar o caso de alta frequência. No entanto, pode reduzir a qualidade em outros casos. Portanto, em alguns casos, o fil- tro de ponderação adaptativo pode ser ligado e desligado com base na detecção do caso de tom alto (por exemplo, usando o componente de detecção de tom alto 314 da Figura 3). Existem muitas maneiras de detectar sinais de pitch alto. Uma maneira é descrita abaixo com refe- rência à Figura 10.
[0074] Como mostrado na Figura 10, quatro parâmetros, incluindo ganho de tom atual 1002, ganho de tom suavizado 1004, comprimento de atraso de tom 1006 e inclinação espectral 1008, podem ser usados pelo componente de detecção de tom alto 1010 para determinar se um sinal de tom alto existe ou não. Em alguns casos, o ganho de tom 1002 indica uma periodicidade do sinal. Em alguns casos, o ganho de tom suavizado 1004 representa um valor normalizado do ganho de tom 1002. Em um exemplo, se o ganho de tom normalizado (por exemplo, ganho de tom suavizado 1004) está entre 0 e 1, um valor alto do ganho de tom normalizado (por exemplo, quando o ganho de tom normalizado está próximo de 1) pode indicar a existência de harmôni- cos fortes no domínio do espectro. O ganho de pitch suavizado 1004 pode indicar que a periodicidade é estável (não apenas local). Em al- guns casos, se o comprimento de atraso de passo 1006 for curto (por exemplo, menos de 3 ms), isso significa que a primeira frequência harmônica F0 é grande (alta). A inclinação espectral 1008 pode ser medida por uma correlação de sinal segmentar em uma distância de amostra ou o primeiro coeficiente de reflexão dos parâmetros LPC. Em alguns casos, a inclinação espectral 1008 pode ser usada para indicar se a área de frequência muito baixa contém energia significativa ou não. Se a energia na área de frequência muito baixa (por exemplo, frequências inferiores a F0) for relativamente alta, o sinal de pitch alto pode não existir. Em alguns casos, quando o sinal de pitch alto é de- tectado, o filtro de ponderação pode ser aplicado. Caso contrário, o filtro de ponderação pode não ser aplicado quando o sinal de pitch alto não for detectado.
[0075] A Figura 11 é um fluxograma ilustrando um método de exemplo 1100 para realizar a ponderação perceptual de um sinal de pitch. Em alguns casos, o método 1100 pode ser implementado por um dispositivo de codec de áudio (por exemplo, codificador de LLB 300). Em alguns casos, o método 1100 pode ser implementado por um dispositivo adequado.
[0076] O método 1100 pode começar no bloco 1102, em que um sinal (por exemplo, sinal 102 da Figura 1) é recebido. Em alguns ca- sos, o sinal pode ser um sinal de áudio. Em alguns casos, o sinal pode incluir um ou mais componentes de sub-banda. Em alguns casos, o sinal pode incluir um componente de LLB, um componente de LHB, um componente de HLB e um componente de HHB. Em um exemplo, o sinal pode ser gerado a uma taxa de amostragem de 96 kHz e ter uma largura de banda de 48 kHz. Neste exemplo, o componente de LLB do sinal pode incluir uma sub-banda de 0-12 kHz, o componente de LHB pode incluir uma sub-banda de 12-24 kHz, o componente de HLB pode incluir uma sub-banda de 24-36 kHz e o componente de HHB pode incluir 36-48 kHz sub-banda. Em alguns casos, o sinal pode ser processado por um filtro de pré-ênfase (por exemplo, filtro de pré- ênfase 104) e um banco de filtro de análise QMF (por exemplo, banco de filtro de análise QMF 106) para gerar os sinais de sub-banda nas quatro sub-bandas. Neste exemplo, um sinal de sub-banda de LLB, um sinal de sub-banda de LHB, um sinal de sub-banda de HLB e um sinal de sub-banda de HHB podem ser gerados respectivamente para as quatro sub-bandas.
[0077] No bloco 1104, um sinal residual de pelo menos um dos um ou mais sinais de sub-banda é gerado com base em pelo menos um dos um ou mais sinais de sub-banda. Em alguns casos, pelo menos um dos um ou mais sinais de sub-banda pode ser filtrado por inclina- ção para gerar um sinal filtrado por inclinação. Em um exemplo, o pelo menos um de um ou mais sinais de sub-banda pode incluir um sinal de sub-banda na sub-banda de LLB (por exemplo, o sinal de sub-banda de LLB 302 da Figura 3). Em alguns casos, o sinal filtrado por inclina- ção pode ser ainda processado por um filtro LPC inverso (por exem- plo, filtro LPC inverso 310) para gerar um sinal residual.
[0078] No bloco 1106, é determinado que pelo menos um de um ou mais sinais de sub-banda é um sinal de tom alto. Em alguns casos,
pelo menos um de um ou mais sinais de sub-banda é determinado como um sinal de pitch alto com base em pelo menos um de um ga- nho de frequência atual, um ganho de frequência suavizado, um com- primento de atraso de frequência ou uma inclinação espectral de pelo menos um de um ou mais sinais de sub-banda.
[0079] Em alguns casos, o ganho de pitch indica uma periodicida- de do sinal e o ganho de pitch suavizado representa um valor normali- zado do ganho de pitch. Em alguns exemplos, o ganho de tom norma- lizado pode estar entre 0 e 1. Nestes exemplos, um alto valor do ga- nho de tom normalizado (por exemplo, quando o ganho de tom norma- lizado está próximo de 1) pode indicar a existência de fortes harmôni- cos no domínio do espectro. Em alguns casos, um comprimento de atraso de passo curto significa que a primeira frequência harmônica (por exemplo, frequência F0 906 da Figura 9) é grande (alta). Se a primeira frequência harmônica F0 for relativamente mais alta (por exemplo, F0> 500 Hz) e um nível de espectro de fundo que é relativa- mente mais baixo (por exemplo, abaixo do limite predeterminado), o sinal de pitch alto pode ser detectado. Em alguns casos, a inclinação espectral pode ser medida por uma correlação de sinal segmentar em uma distância de amostra ou o primeiro coeficiente de reflexão dos parâmetros LPC. Em alguns casos, a inclinação espectral pode ser usada para indicar se a área de frequência muito baixa contém energia significativa ou não. Se a energia na área de frequência muito baixa (por exemplo, frequências inferiores a F0) for relativamente alta, o si- nal de pitch alto pode não existir.
[0080] No bloco 1108, uma operação de ponderação é realizada no sinal residual de pelo menos um dos um ou mais sinais de sub- banda em resposta à determinação de que pelo menos um dos um ou mais sinais de sub-banda é um sinal de pitch alto. Em alguns casos, quando o sinal de pitch alto é detectado, um filtro de ponderação (por exemplo, filtro de ponderação 316) pode ser aplicado ao sinal residual. Em alguns casos, um sinal residual ponderado pode ser gerado. Em alguns casos, a operação de ponderação pode não ser realizada quando o sinal de pitch alto não é detectado.
[0081] Como observado, no caso de sinal de pitch alto, o erro de codificação na área de baixa frequência pode ser perceptivamente sensível devido à falta de efeito de mascaramento de audição. Se a taxa de bits não for alta o suficiente, os erros de codificação não po- dem ser evitados. O filtro de ponderação adaptativo (por exemplo, filtro de ponderação 316) e os métodos de ponderação no presente docu- mento descritos podem ser usados para reduzir o erro de codificação e melhorar a qualidade do sinal na área de baixa frequência. No entanto, em alguns casos, isso pode aumentar os erros de codificação em fre- quências mais altas, o que pode ser insignificante para a qualidade perceptual de sinais de pitch alto. Em alguns casos, o filtro de ponde- ração adaptável pode ser ativado e desativado condicionalmente com base na detecção de sinal de pitch alto. Como descrito acima, o filtro de ponderação pode ser ativado quando o sinal de pitch alto é detec- tado e pode ser desativado quando o sinal de pitch alto não é detecta- do. Desta forma, a qualidade para casos de pitch alto ainda pode ser melhorada, enquanto a qualidade para casos de pitch não alto pode não ser comprometida.
[0082] No bloco 1110, um sinal residual quantizado é gerado com base no sinal residual ponderado como gerado no bloco 1108. Em al- guns casos, o sinal residual ponderado, junto com uma contribuição de LTP, pode ser processado uma unidade de função de adição para ge- rar um segundo sinal residual ponderado. Em alguns casos, o segundo sinal residual ponderado pode ser quantizado para gerar um sinal resi- dual quantizado, que pode ser ainda enviado ao lado do decodificador (por exemplo, decodificador de LLB 400 da Figura 4).
[0083] A Figura 12 e a Figura 13 mostram as estruturas de exem- plo do codificador de quantização residual 1200 e do decodificador de quantização residual 1300. Em alguns exemplos, o codificador de quantização residual 1200 e o decodificador de quantização residual 1300 podem ser usados para processar sinais na sub-banda de LLB. Como mostrado, o codificador de quantização residual 1200 inclui um componente de codificação de envelope de energia 1204, um compo- nente de normalização residual 1206, um primeiro componente de co- dificação de etapa maior 1210, um primeiro componente de etapa fina 1212, um componente de otimização de destino 1214, um componente de ajuste de taxa de bit 1216, um segundo componente de codificação de etapa maior 1218, e um segundo componente de codificação de etapa fina 1220.
[0084] Como mostrado, um sinal de sub-banda de LLB 1202 pode ser primeiro processado pelo componente de codificação de envelope de energia 1204. Em alguns casos, um envelope de energia de domí- nio de tempo do sinal residual de LLB pode ser determinado e quanti- zado pelo componente de codificação de envelope de energia 1204. Em alguns exemplos, o envelope de energia determinado pode ter uma faixa dinâmica de 12 dB a 132 dB no domínio residual, cobrindo nível muito baixo e nível muito alto. Em alguns casos, cada subquadro em um quadro tem uma quantização de nível de energia e a energia de pico do subquadro no quadro pode ser codificada diretamente no domínio dB. As outras energias de subquadro no mesmo quadro po- dem ser codificadas com a abordagem de codificação de Huffman, co- dificando a diferença entre a energia de pico e a energia atual. Em al- guns casos, como a duração de um subquadro pode ser tão curta quanto cerca de 2 ms, a precisão do envelope pode ser aceitável com base no princípio de mascaramento do ouvido humano.
[0085] Após ter o envelope de energia de domínio de tempo quan-
tizado, o sinal residual de LLB pode ser então normalizado pelo com- ponente de normalização residual 1206. Em alguns casos, o sinal resi- dual de LLB pode ser normalizado com base no envelope de energia de domínio de tempo quantizado.
Em alguns exemplos, o sinal residu- al de LLB pode ser dividido pelo envelope de energia de domínio de tempo quantizado para gerar um sinal residual de LLB normalizado.
Em alguns casos, o sinal residual de LLB normalizado pode ser usado como o sinal de destino inicial 1208 para uma quantização inicial.
Em alguns casos, a quantização inicial pode incluir dois estágios de codifi- cação/quantização.
Em alguns casos, um primeiro estágio de codifica- ção/quantização inclui uma Codificação Huffman de Grande Etapa, e um segundo estágio de codificação/quantização inclui uma Codifica- ção Uniforme de Etapa Fina.
Como mostrado, o sinal de destino inicial 1208, que é o sinal residual de LLB normalizado, pode ser processado pelo componente de Codificação Huffman de Grande Etapa 1210 pri- meiro.
Para o codec de áudio de alta resolução, cada amostra residual pode ser quantizada.
A codificação de Huffman pode economizar bits utilizando a distribuição de probabilidade de índice de quantização es- pecial.
Em alguns casos, quando o tamanho da etapa de quantização residual é grande o suficiente, a distribuição de probabilidade do índice de quantização torna-se adequada para a codificação de Huffman.
Em alguns casos, o resultado da quantização da quantização em grande etapa pode ser subótimo.
Uma quantização uniforme pode ser adicio- nada com etapa de quantização menor após a codificação de Huffman.
Como mostrado, o componente de codificação uniforme de etapa fina 1212 pode ser usado para quantizar o sinal de saída do componente de codificação de Huffman de etapa grande 1210. Como tal, o primeiro estágio de codificação/quantização do sinal residual LLB normalizado seleciona uma etapa de quantização relativamente gran- de porque a distribuição especial do índice de codificação quantizado leva a uma codificação de Huffman mais eficiente, e o segundo estágio de codificação/quantização usa codificação uniforme relativamente simples com uma etapa de quantização relativamente pequena, a fim de reduzir ainda mais os erros de quantização da codifica- ção/quantização do primeiro estágio.
[0086] Em alguns casos, o sinal residual inicial pode ser uma refe- rência de destino ideal se a quantização residual não tiver erro ou tiver um erro pequeno o suficiente. Se a taxa de bits de codificação não for alta o suficiente, o erro de codificação pode sempre existir e não é in- significante. Portanto, este sinal de referência de destino residual inici- al 1208 pode ser subótimo perceptivamente para a quantização. Em- bora o sinal de referência de destino residual inicial 1208 seja percep- tivamente subótimo, ele pode fornecer uma estimativa de erro de quantização rápida, que pode não só ser usada para ajustar a taxa de bits de codificação (por exemplo, pelo componente de ajuste de taxa de bits 1216), mas também ser usado para construir um sinal de refe- rência de destino perceptivamente otimizado. Em alguns casos, o sinal de referência de destino otimizado perceptivamente pode ser gerado pelo componente de otimização de destino 1214 com base no sinal de referência de destino residual inicial 1208 e o sinal de saída da quanti- zação inicial (por exemplo, sinal de saída do componente de codifica- ção uniforme de etapa fina 1212).
[0087] Em alguns casos, o sinal de referência de destino otimizado pode ser construído de uma forma não apenas para minimizar a in- fluência de erro da amostra atual, mas também das amostras anterio- res e futuras. Além disso, pode otimizar a distribuição de erro no do- mínio do espectro para considerar o efeito de mascaramento percep- tual do ouvido humano.
[0088] Após o sinal de referência de destino otimizado ser constru- ído pelo componente de otimização de destino 1214, a codificação
Huffman de primeiro estágio e a codificação uniforme de segundo es- tágio podem ser realizadas novamente a fim de substituir o primeiro resultado de quantização (inicial) e obter uma melhor qualidade per- ceptual. Neste exemplo, o componente de codificação Huffman de se- gunda etapa grande 1218 e o componente de codificação uniforme de segunda etapa fina 1220 podem ser usados para realizar a codificação Huffman de primeiro estágio e a codificação uniforme de segundo es- tágio no sinal de referência de destino otimizado. A quantização do sinal de referência de destino inicial e o sinal de referência de destino otimizado serão discutidos abaixo em mais detalhes.
[0089] Em alguns exemplos, o sinal residual não quantizado ou o sinal residual inicial de destino pode ser representado por ri(n). Usando ri(n) como o destino, o sinal residual pode ser inicialmente quantizado para obter o primeiro sinal residual quantizado observado como rî (n). Com base em ri(n) , rî (n), e uma resposta impulsiva ℎw(n) de um filtro de ponderação perceptual, um sinal residual de destino perceptiva- mente otimizado ro(n) pode ser avaliado. Usando ro(n) como o destino atualizado ou otimizado, o sinal residual pode ser quantizado nova- mente para obter o segundo sinal residual quantizado observado como rô (n), que foi perceptivamente otimizado para substituir o primeiro sinal residual quantizado rî (n). Em alguns casos, ℎw(n) pode ser determina- do em muitas possíveis formas, por exemplo, estimado ℎw(n) com base no filtro LPC.
[0090] Em alguns casos, o filtro LPC para sub-banda de LLB pode ser expresso como o seguinte: .
[0091] O filtro perceptivamente ponderado W(z) pode ser definido como:
onde α é um coeficiente constante, 0<α<1. γ pode ser o primeiro coefi- ciente de reflexão do filtro LPC ou simplesmente um constante, - 1<γ<1. A resposta impulsiva do filtro W(z) pode ser definida como ℎw(n). Em alguns casos, o comprimento de ℎw(n) depende dos valores de α e γ. Em alguns casos, quando α e γ são próximos a zero, o com- primento de ℎw(n) se torna curto e decai a zero rapidamente. Do ponto de vista de complexidade computacional, é ideal ter uma curta respos- ta impulsiva ℎw(n). No caso que ℎw(n) não é curto o suficiente, pode ser multiplicado com uma janela de meio-hamming ou uma janela de meio-hanning a fim de fazer ℎw(n) decair a zero rapidamente. Após ter a resposta impulsiva ℎw(n), o destino no domínio de sinal perceptiva- mente ponderado pode ser expresso como que é uma convolução entre ri(n) e ℎw(n). A contribuição do residual inicialmente quantizado rî (n) no domínio de sinal perceptivamente ponderado pode ser expresso como .
[0092] O erro no domínio residual é minimizado como é quantizado no domínio residual direto. Entretan- to, o erro no domínio de sinal perceptivamente ponderado pode não ser minimizado. Portanto, o erro de quantização pode preci- sar ser minimizado no domínio do sinal perceptivamente ponderado. Em alguns casos, todas as amostras residuais podem ser quantizadas em conjunto. No entanto, isso pode causar complexidade extra. Em alguns casos, o residual pode ser quantizado na forma de amostra por amostra, mas otimizado perceptivamente. Por exemplo, rô (n) = rî (n) pode ser inicialmente definido para todas as amostras no quadro atual. Supondo que todas as amostras tenham sido quantizadas, exceto que a amostra em m não é quantizada, o melhor valor perceptivamente agora em m não é ri(m), mas deveria ser onde < Tg’(n), ℎw(n) > representa a correlação cruzada entre o vetor {Tg’(n)} e o vetor {ℎw(n)}, no qual o comprimento do vetor é igual ao comprimento da resposta impulsiva ℎw(n) e o ponto inicial do vetor de {Tg’(n)} está em m. ||ℎw(n)|| é a energia do vetor {ℎw(n)}, que é uma energia constante no mesmo quadro. Tg’(n) pode ser expresso como .
[0093] Uma vez que o novo valor de destino perceptivamente oti- mizado ro(m) é determinado, pode ser quantizado novamente para ge- rar rô (m) em uma forma similar à quantização inicial incluindo Codifi- cação Huffman de Grande Etapa e Codificação Uniforme de Etapa Fi- na. Então, m irá para a próxima posição de amostra. O processamento acima é repetido amostra por amostra, enquanto as expressões (7) e (8) são atualizadas com novos resultados até que todas as amostras sejam quantizadas de forma ideal. Durante cada atualização para cada m, a expressão (8) não precisa ser recalculada porque a maioria das amostras em {rô (k)} não são alteradas. O denominador na expressão (7) é uma constante, de forma que a divisão pode se tornar uma multi- plicação constante.
[0094] No lado do decodificador como mostrado na Figura 13, os valores quantizados da decodificação de Huffman de etapa grande 1302 e a decodificação uniforme de primeira etapa 1304 são adiciona- das juntas pela unidade de função de adição 1306 para formar a nor- malizado sinal residual. O sinal residual normalizado pode ser proces-
sado pelo componente de decodificação de envelope de energia 1308 no domínio de tempo para gerar o sinal residual decodificado 1310.
[0095] A Figura 14 é um fluxograma ilustrando um método de exemplo 1400 para realizar a quantização residual para um sinal. Em alguns casos, o método 1400 pode ser implementado por um dispositi- vo de codec de áudio (por exemplo, codificador de LLB 300 ou codifi- cador de quantização residual 1200). Em alguns casos, o método 1100 pode ser implementado por qualquer dispositivo adequado.
[0096] O método 1400 começa no bloco 1402 onde um envelope de energia de domínio de tempo de um sinal residual de entrada é de- terminado. Em alguns casos, o sinal residual de entrada pode ser um sinal residual na sub-banda de LLB (por exemplo, sinal residual de LLB 1202).
[0097] No bloco 1404, o envelope de energia de domínio de tempo do sinal residual de entrada é quantizado para gerar um envelope de energia de domínio de tempo quantizado. Em alguns casos, o envelo- pe de energia de domínio de tempo quantizado pode ser enviado ao lado do decodificador (por exemplo, decodificador 1300).
[0098] No bloco 1406, o sinal residual de entrada é normalizado com base no envelope de energia de domínio de tempo quantizado para gerar um primeiro sinal residual de destino. Em alguns casos, o sinal residual de LLB pode ser dividido pelo envelope de energia de domínio de tempo quantizado para gerar um sinal residual de LLB normalizado. Em alguns casos, o sinal residual de LLB normalizado pode ser usado como um sinal de destino inicial para uma quantização inicial.
[0099] No bloco 1408, uma primeira quantização é realizada no primeiro sinal residual de destino em uma primeira taxa de bit para ge- rar um primeiro sinal residual quantizado. Em alguns casos, a primeira quantização residual pode incluir dois estágios de subquantiza-
ção/codificação. Um primeiro estágio de subquantização pode ser rea- lizado no primeiro sinal residual de destino em uma primeira etapa de quantização para gerar um primeiro sinal de saída de subquantização. Um segundo estágio de subquantização pode ser realizado no primei- ro sinal de saída de subquantização em uma segunda etapa de quan- tização para gerar o primeiro sinal residual quantizado. Em alguns ca- sos, a primeira etapa de quantização é maior do que a segunda etapa de quantização em tamanho. Em alguns exemplos, o primeiro estágio de subquantização pode ser Codificação Huffman de Grande Etapa, e o segundo estágio de subquantização pode ser Codificação Uniforme de Etapa Fina.
[00100] Em alguns casos, o primeiro sinal residual de destino inclui uma pluralidade de amostras. A primeira quantização pode ser reali- zada no primeiro sinal residual de destino amostra por amostra. Em alguns casos, isso pode reduzir a complexidade da quantização, assim melhorando a eficiência da quantização.
[00101] No bloco 1410, um segundo sinal residual de destino é ge- rado com base, pelo menos, no primeiro sinal residual quantizado e no primeiro sinal residual de destino. Em alguns casos, o segundo sinal residual de destino pode ser gerado com base no primeiro sinal resi- dual de destino, no primeiro sinal residual quantizado, e em uma res- posta impulsiva ℎw(n) de um filtro de ponderação perceptual. Em al- guns casos, um sinal residual de destino perceptivamente otimizado, que é o segundo sinal residual de destino, pode ser gerado para uma segunda quantização residual.
[00102] No bloco 1412, uma segunda quantização residual é reali- zada no segundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quantizado. Em alguns casos, a segunda taxa de bit pode ser diferente da primeira taxa de bit. Em um exemplo, a segunda taxa de bit pode ser mais alta do que a primeira taxa de bit. Em alguns casos, o erro de codificação da primeira quanti- zação residual na primeira taxa de bit pode não ser insignificante. Em alguns casos, a taxa de bit de codificação pode ser ajustada (por exemplo, elevada) na segunda quantização residual para reduzir a ta- xa de codificação.
[00103] Em alguns casos, a segunda quantização residual é similar à primeira quantização residual. Em alguns exemplos, a segunda quantização residual pode ainda incluir dois estágios de subquantiza- ção/codificação. Nestes exemplos, um primeiro estágio de subquanti- zação pode ser realizado no segundo sinal residual de destino em uma grande etapa de quantização para gerar um sinal de saída de subquantização. Um segundo estágio de subquantização pode ser realizado no sinal de saída de subquantização em uma pequena etapa de quantização para gerar o segundo sinal residual quantizado. Em alguns casos, o primeiro estágio de subquantização pode ser Codifica- ção Huffman de Grande Etapa, e o segundo estágio de subquantiza- ção pode ser Codificação Uniforme de Etapa Fina. Em alguns casos, o segundo sinal residual quantizado pode ser enviado ao lado do decodi- ficador (por exemplo, decodificador 1300) através de um canal de fluxo de bits.
[00104] Como observado nas Figuras 3-4, a LTP pode ser ligada e desligada condicionalmente para uma melhor PLC. Em alguns casos, quando a taxa de bits do codec não é alta o suficiente para atingir a qualidade transparente, a LTP é muito útil para sinais periódicos e harmônicos. Para o codec de alta resolução, dois problemas podem precisar ser resolvidos para a aplicação de LTP: (1) a complexidade computacional deve ser reduzida, pois uma LTP tradicional pode cus- tar uma complexidade computacional muito alta em um ambiente de alta taxa de amostragem; e (2) a influência negativa para ocultação de perda de pacote (PLC) deve ser limitada porque a LTP explora a corre-
lação entre quadros e pode causar a propagação de erro quando ocor- re perda de pacote no canal de transmissão.
[00105] Em alguns casos, a pesquisa de pitch lag adiciona comple- xidade computacional extra ao LTP. Um mais eficiente pode ser dese- jável em LTP para melhorar a eficiência de codificação. Um exemplo de processo de pesquisa de atraso de pitch é descrito abaixo com re- ferência às Figuras 15-16.
[00106] A Figura 15 mostra um exemplo de voz sonora em que o atraso de pitch 1502 representa a distância entre dois ciclos periódicos vizinhos (por exemplo, distância entre os picos P1 e P2). Alguns sinais musicais podem não apenas ter uma forte periodicidade, mas também um atraso de pitch estável (atraso de pitch quase constante).
[00107] A Figura 16 mostra um processo de exemplo 1600 para realizar o controle de LTP para melhor ocultação de perda de pacote. Em alguns casos, o processo 1600 pode ser implementado por um dispositivo codec (por exemplo, codificador 100 ou codificador 300). Em alguns casos, o processo 1600 pode ser implementado por qual- quer dispositivo adequado. O processo 1600 inclui uma pesquisa de atraso de pitch (que será descrito abaixo como "pitch") e um controle sw LTP. Geralmente, a pesquisa de pitch pode ser complicada em alta taxa de amostragem com a maneira tradicional devido ao grande nú- mero de candidatos a pitch. O processo 1600, como descrito neste do- cumento, pode incluir três fases/etapas. Durante uma primeira fa- se/etapa, um sinal (por exemplo, o sinal LLB 1602) pode ser filtrado passa-baixo 1604, pois a periodicidade está principalmente na região de baixa frequência. Em seguida, o sinal filtrado pode ser amostrado para gerar um sinal de entrada para uma pesquisa de pitch áspero ini- cial rápida 1608. Em um exemplo, o sinal de amostragem inferior é ge- rado a uma taxa de amostragem de 2 kHz. Como o número total de candidatos a pitch na taxa de amostragem baixa não é alto, um resul-
tado bruto de pitch pode ser obtido rapidamente, procurando por todos os candidatos a pitch com a taxa de amostragem baixa. Em alguns casos, a pesquisa de pitch inicial 1608 pode ser feita usando a abor- dagem tradicional de maximizar a correlação cruzada normalizada com janela curta ou autocorrelação com uma janela grande.
[00108] Como o resultado da pesquisa de pitch inicial pode ser rela- tivamente bruto, uma pesquisa fina com uma abordagem de correla- ção cruzada na vizinhança dos vários pitches iniciais pode ainda ser complicada em uma alta taxa de amostragem (por exemplo, 24 kHz). Portanto, durante uma segunda fase/etapa (por exemplo, pesquisa de pitch fino rápido 1610), a precisão de pitch pode ser aumentada no domínio da forma de onda simplesmente olhando para os locais dos picos da forma de onda na baixa taxa de amostragem. Então, durante uma terceira fase/etapa (por exemplo, busca otimizada de localização de pitch 1612), o resultado da pesquisa de pitch fino da segunda fa- se/etapa pode ser otimizado com a abordagem de correlação cruzada dentro de uma pequena faixa de pesquisa na alta taxa de amostra- gem.
[00109] Por exemplo, durante a primeira fase/etapa (por exemplo, pesquisa de pitch inicial 1608), um resultado de pesquisa de pitch bru- to inicial pode ser obtido com base em todos os candidatos de pitch que foram pesquisados. Em alguns casos, uma vizinhança de candida- to a pitch pode ser definida com base no resultado inicial da pesquisa de pitch áspero e pode ser usada para a segunda fase/etapa para ob- ter um resultado de pesquisa de pitch mais preciso. Durante a segun- da fase/etapa (por exemplo, pesquisa de pitch fino rápido 1610), os locais de pico da forma de onda podem ser determinados com base nos candidatos de pitch e dentro da vizinhança do candidato de pitch como determinado na primeira fase/etapa. Em um exemplo, como mostrado na Figura 15, a localização do primeiro pico P1 na Figura 15 pode ser determinada dentro de uma faixa de pesquisa limitada defini- da a partir do resultado da pesquisa de pitch inicial (por exemplo, a vizinhança do candidato de pitch determinada cerca de 15% de varia- ção da primeira fase/etapa). A segunda localização do pico P2 na Fi- gura 15 pode ser determinada de maneira semelhante. A diferença de localização entre P1 e P2 torna-se uma estimativa de pitch muito mais precisa do que a estimativa de pitch inicial. Em alguns casos, a estima- tiva de pitch mais precisa obtida da segunda fase/etapa pode ser usa- da para definir uma segunda vizinhança candidata de pitch que pode ser usada na terceira fase/etapa para encontrar um atraso de pitch fino otimizado, por exemplo, a vizinhança candidata de pitch determinada variação de cerca de 15% da segunda fase/etapa. Durante a terceira fase/etapa (por exemplo, pesquisa otimizada de pitch fino 1612), o atraso de pitch fino otimizado pode ser pesquisado com a abordagem de correlação cruzada normalizada dentro de uma faixa de pesquisa muito pequena (por exemplo, a vizinhança candidata de segundo pitch).
[00110] Em alguns casos, se a LTP estiver sempre ativada, a PLC pode estar abaixo do ideal devido à possível propagação de erros quando o pacote de fluxo de bits é perdido. Em alguns casos, a LTP pode ser ligada quando puder melhorar com eficiência a qualidade do áudio e não impactar a PLC de forma significativa. Na prática, a LTP pode ser eficiente quando o ganho de pitch é alto e estável, o que sig- nifica que a alta periodicidade dura pelo menos por vários quadros (não apenas por um quadro). Em alguns casos, na região do sinal de alta periodicidade, a PLC é relativamente simples e eficiente, pois a PLC sempre usa a periodicidade para copiar as informações anteriores para o quadro perdido atual. Em alguns casos, o atraso de pitch está- vel também pode reduzir o impacto negativo na PLC. O atraso de pitch estável significa que o valor do atraso de pitch não muda significativa-
mente pelo menos por vários quadros, provavelmente resultando em pitch estável em um futuro próximo. Em alguns casos, quando o qua- dro atual do pacote de fluxo de bits é perdido, a PLC pode usar as in- formações de pitch anteriores para recuperar o quadro atual. Como tal, o atraso de passo estável pode ajudar na estimativa de passo atual para PLC.
[00111] Continuando o exemplo com referência à Figura 16, a de- tecção de periodicidade 1614 e a detecção de estabilidade 1616 são realizadas antes de decidir ligar ou desligar o LTP. Em alguns casos, quando o ganho do pitch é estavelmente alto e o atraso do pitch é rela- tivamente estável, o LTP pode ser ativado. Por exemplo, o ganho de pitch pode ser definido para quadros altamente periódicos e estáveis (por exemplo, o ganho de pitch é estavelmente alto do que 0,8), como mostrado no bloco 1618. Em alguns casos, referindo-se à Figura 3, um sinal de contribuição de LTP pode ser gerado e combinado com um sinal residual ponderado para gerar um sinal de entrada para quanti- zação residual. Por outro lado, se o ganho do pitch não estiver esta- velmente alto e/ou o atraso de pitch não for estável, a LTP pode ser desligada.
[00112] Em alguns casos, a LTP também pode ser desativada para um ou dois quadros se a LTP tiver sido ativada anteriormente para vá- rios quadros, a fim de evitar possível propagação de erro quando o pacote de fluxo de bits é perdido. Em um exemplo, como mostrado no bloco 1620, o ganho de pitch pode ser redefinido condicionalmente para zero para melhor PLC, por exemplo, quando LTP foi previamente ativada para vários quadros. Em alguns casos, quando a LTP está desligada, um pouco mais de taxa de bits de codificação pode ser de- finida no sistema de codificação de taxa de bits variável. Em alguns casos, quando a LTP é decidida para ser ativada, o ganho de pitch e o atraso de pitch podem ser quantizados e enviados para o lado do de-
codificador, como mostrado no bloco 1622.
[00113] A Figura 17 mostra espectrogramas de exemplo de um si- nal de áudio. Como mostrado, o espectrograma 1702 mostra o gráfico de tempo-frequência do sinal de áudio. O espectrograma 1702 é mos- trado para incluir muitos harmônicos, o que indica alta periodicidade do sinal de áudio. O espectrograma 1704 mostra o ganho de altura origi- nal do sinal de áudio. O ganho de pitch é mostrado como estavelmente alto na maior parte do tempo, o que também indica alta periodicidade do sinal de áudio. O espectrograma 1706 mostra o ganho de pitch su- avizado (correlação de pitch) do sinal de áudio. Neste exemplo, o ga- nho de pitch suavizado representa o ganho de pitch normalizado. O espectrograma 1708 mostra o atraso de pitch e o espectrograma 1710 mostra o ganho de pitch quantizado. O atraso de pitch é relativamente estável na maior parte do tempo. Como mostrado, o ganho de pitch foi zerado periodicamente, o que indica que a LTP está desligada, para evitar a propagação do erro. O ganho de pitch quantizado também é definido como zero quando a LTP é desligada.
[00114] A Figura 18 é um fluxograma ilustrando um método de exemplo 1800 para realizar LTP. Em alguns casos, o método 1400 po- de ser implementado por um dispositivo de codec de áudio (por exem- plo, codificador de LLB 300). Em alguns casos, o método 1100 pode ser implementado por qualquer dispositivo adequado.
[00115] O método 1800 começa no bloco 1802 onde um sinal de entrada de áudio é recebido em uma primeira taxa de amostragem. Em alguns casos, o sinal de áudio pode incluir uma pluralidade de pri- meiras amostras, onde a pluralidade de primeiras amostras é gerada na primeira taxa de amostra. Em um exemplo, a pluralidade de primei- ras amostras pode ser gerada em uma taxa de amostragem de 96 kHz.
[00116] No bloco 1804, o sinal de áudio é reduzido na taxa de amostragem. Em alguns casos, a pluralidade de primeiras amostras do sinal de áudio pode ser reduzida na taxa de amostragem para gerar uma pluralidade de segundas amostras em uma segunda taxa de amostragem. Em alguns casos, a segunda taxa de amostragem é me- nor do que a primeira taxa de amostragem. Neste exemplo, a plurali- dade de segundas amostras pode ser gerada em uma taxa de amos- tragem de 2 kHz.
[00117] No bloco 1806, um primeiro atraso de pitch é determinado na segunda taxa de amostragem. Como o número total de candidatos a pitch na taxa de amostragem baixa não é alto, um resultado bruto de pitch pode ser obtido rapidamente, procurando por todos os candida- tos a pitch com a taxa de amostragem baixa. Em alguns casos, uma pluralidade de candidatos a pitch pode ser determinada com base na pluralidade de segundas amostras na segunda taxa de amostragem. Em alguns casos, o primeiro atraso de pitch pode ser determinado na pluralidade de candidatos a pitch. Em alguns casos, o primeiro atraso de pitch pode ser determinado maximizando a correlação cruzada normalizada com uma primeira janela ou autocorrelação com uma se- gunda janela, onde a segunda janela é maior do que a primeira janela.
[00118] No bloco 1808, um segundo atraso de pitch é determinado com base no primeiro atraso de pitch como determinado no bloco
1804. Em alguns casos, uma primeira faixa de busca pode ser deter- minada com base no primeiro atraso de pitch. Em alguns casos, uma primeira localização de pico e uma segunda localização de pico pode ser determinada dentro da primeira faixa de busca. Em alguns casos, o segundo atraso de pitch pode ser determinado com base na primeira localização de pico e na segunda localização de pico. For exemplo, uma diferença de localização entre a primeira localização de pico e a segunda localização de pico pode ser usada para determinar o segun- do atraso de pitch.
[00119] No bloco 1810, um terceiro atraso de pitch é determinado com base no segundo atraso de pitch como determinado no bloco
1808. Em alguns casos, o segundo atraso de pitch pode ser usado pa- ra definir uma proximidade de candidato de pitch que pode ser usada ao encontrar um atraso de pitch fino otimizado. Por exemplo, uma se- gunda faixa de busca pode ser determinada com base no segundo atraso de pitch. Em alguns casos, o terceiro atraso de pitch pode ser determinado dentro da segunda faixa de busca em uma terceira taxa de amostragem. Em alguns casos, a terceira taxa de amostragem é mais alta do que a segunda taxa de amostragem. Neste exemplo, a terceira taxa de amostragem pode ser 24 kHz. Em alguns casos, o ter- ceiro atraso de pitch pode ser determinado usando uma abordagem de correlação cruzada normalizada dentro da segunda faixa de busca na terceira taxa de amostragem. Em alguns casos, o terceiro atraso de pitch pode ser determinado como o atraso de pitch do sinal de entrada de áudio.
[00120] No bloco 1812, é determinado que um ganho de pitch do sinal de áudio de entrada excedeu um limite predeterminado e que uma mudança do atraso de pitch do sinal de áudio de entrada esteve dentro de uma faixa predeterminada para pelo menos um número pre- determinado de quadros. A LTP pode ser mais eficiente quando o ga- nho de pitch é alto e estável, o que significa que a alta periodicidade dura pelo menos por vários quadros (não apenas por um). Em alguns casos, o atraso de pitch estável também pode reduzir o impacto nega- tivo na PLC. O atraso de pitch estável significa que o valor do atraso de pitch não muda significativamente pelo menos por vários quadros, provavelmente resultando em pitch estável em um futuro próximo.
[00121] No bloco 1814, um ganho de pitch é definido para um qua- dro atual do sinal de entrada de áudio em resposta à determinação que um ganho de pitch do sinal de entrada de áudio excedeu o limiar predeterminado e que a mudança do terceiro atraso de pitch esteve dentro da faixa predeterminada para pelo menos um número prede- terminado de quadros prévios. Assim, o ganho de pitch é definido para quadros altamente periódicos e estáveis para melhorar a qualidade de sinal enquanto não impacta a PLC.
[00122] Em alguns casos, em resposta à determinação que o ganho de pitch do sinal de entrada de áudio é menor do que o limiar prede- terminado e/ou que a mudança do terceiro atraso de pitch não esteve dentro da faixa predeterminada para pelo menos o número predeter- minado de quadros prévios, o ganho de pitch é definido a zero para o quadro atual do sinal de entrada de áudio. Assim, a propagação de erro pode ser reduzida.
[00123] Como observado, cada amostra residual é quantizada para o codec de áudio de alta resolução. Isso significa que a complexidade computacional e a taxa de bits de codificação da quantização da amostra residual podem não mudar significativamente quando o tama- nho do quadro muda de 10 ms para 2 ms. No entanto, a complexidade computacional e a taxa de bits de codificação de alguns parâmetros de codec, como LPC, podem aumentar dramaticamente quando o tama- nho do quadro muda de 10 ms para 2 ms. Normalmente, os parâme- tros LPC precisam ser quantizados e transmitidos para cada quadro. Em alguns casos, a codificação diferencial LPC entre o quadro atual e o quadro anterior pode economizar bits, mas também pode causar propagação de erro quando o pacote de fluxo de bits é perdido no ca- nal de transmissão. Portanto, o tamanho do quadro curto pode ser de- finido para obter um codec de baixo atraso. Em alguns casos, quando o tamanho do quadro é tão curto, como 2 ms, a taxa de bits de codifi- cação dos parâmetros LPC pode ser muito alta e a complexidade computacional também pode ser alta, pois a duração do tempo de quadro está no denominador da taxa de bits ou a complexidade.
[00124] Em um exemplo com referência à quantização de envelope de energia no domínio do tempo mostrada na Figura 12, se o tamanho do subquadro é de 2 ms, um quadro de 10 ms deve conter 5 subtra- mas. Normalmente, cada sobrechassi tem um nível de energia que precisa ser quantizado. Como um quadro contém 5 subtramas, os ní- veis de energia dos 5 subtramas podem ser quantizados em conjunto de modo que a taxa de bits de codificação do envelope de energia no domínio do tempo seja limitada. Em alguns casos, quando o tamanho do quadro é igual ao tamanho do subquadro ou um quadro contém um subquadro, a taxa de bits de codificação pode aumentar significativa- mente se cada nível de energia for quantizado independentemente. Nestes casos, a codificação diferencial dos níveis de energia entre quadros consecutivos pode reduzir a taxa de bits de codificação. No entanto, tal abordagem pode ser subótima, pois pode causar propaga- ção de erro quando o pacote de fluxo de bits é perdido no canal de transmissão.
[00125] Em alguns casos, a quantização vetorial dos parâmetros LPC pode fornecer uma taxa de bits mais baixa. No entanto, pode exi- gir mais carga computacional. A quantização escalar simples dos pa- râmetros LPC pode ter uma complexidade menor, mas requer uma taxa de bits mais alta. Em alguns casos, uma quantização escalar es- pecial lucrando com a codificação de Huffman pode ser usada. No en- tanto, este método pode não ser suficiente para tamanho de quadro muito curto ou codificação de atraso muito baixo. Um novo método de quantização de parâmetros LPC será descrito abaixo com referência às Figuras 19-20.
[00126] No bloco 1902, pelo menos um de uma inclinação de es- pectro diferencial e uma diferença de energia entre um quadro atual e um quadro anterior de um sinal de áudio é determinado. Referindo-se à Figura 20, o espectrograma 2002 mostra um gráfico de tempo-
frequência do sinal de áudio. O espectrograma 2004 mostra um valor absoluto da inclinação diferencial do espectro entre o quadro atual e o quadro anterior do sinal de áudio. O espectrograma 2006 mostra um valor absoluto da diferença de energia entre o quadro atual e o quadro anterior do sinal de áudio. O Espectrograma 2008 mostra uma decisão de cópia na qual 1 indica que o quadro atual copiará os parâmetros LPC quantizados do quadro anterior e 0 significa que o quadro atual quantizará/enviará os parâmetros LPC novamente. Neste exemplo, os valores absolutos da inclinação do espectro diferencial e da diferença de energia são relativamente muito pequenos durante a maior parte do tempo e se tornam relativamente maiores no final (lado direito).
[00127] No bloco 1904, uma estabilidade do sinal de áudio é detec- tada. Em alguns casos, a estabilidade espectral do sinal de áudio pode ser determinada com base no bloco de espectro diferencial e/ou a dife- rença de energia entre o quadro atual e o quadro anterior do sinal de áudio. Em alguns casos, a estabilidade espectral do sinal de áudio po- de ser ainda determinada com base na frequência do sinal de áudio. Em alguns casos, um valor absoluto da inclinação do espectro diferen- cial pode ser determinado com base em um espectro do sinal de áudio (por exemplo, o espectrograma 2004). Em alguns casos, um valor ab- soluto da diferença de energia entre o quadro atual e o quadro anterior do sinal de áudio também pode ser determinado com base em um es- pectro do sinal de áudio (por exemplo, espectrograma 2006). Em al- guns casos, se for determinado que uma mudança do valor absoluto da inclinação do espectro diferencial e/ou uma mudança do valor ab- soluto da diferença de energia esteve dentro de um intervalo prede- terminado por pelo menos um número predeterminado de quadros, o espectro espectral a estabilidade do sinal de áudio pode ser determi- nada para ser detectada.
[00128] No bloco 1906, os parâmetros LPC quantizados para o quadro anterior são copiados para o quadro atual do sinal de áudio em resposta à detecção da estabilidade espectral do sinal de áudio. Em alguns casos, quando o espectro do sinal de áudio é muito estável e não muda significativamente de um quadro para o próximo, os parâ- metros LPC atuais para o quadro atual podem não ser codifica- dos/quantizados. Em vez disso, os parâmetros LPC quantizados ante- riores podem ser copiados para o quadro atual porque os parâmetros LPC não quantizados mantêm quase as mesmas informações do qua- dro anterior para o quadro atual. Nesses casos, apenas 1 bit pode ser enviado para informar ao decodificador que os parâmetros LPC quan- tizados são copiados do quadro anterior, resultando em uma taxa de bits muito baixa e complexidade muito baixa para o quadro atual.
[00129] Se a estabilidade espectral do sinal de áudio não for detec- tada, os parâmetros LPC podem ser forçados a serem quantizados e codificados novamente. Em alguns casos, se for determinado que uma mudança do valor absoluto da inclinação do espectro diferencial entre o quadro atual e o quadro anterior para o sinal de áudio não esteve dentro de um intervalo predeterminado para pelo menos um número predeterminado de quadros, pode ser determinou que a estabilidade espectral do sinal de áudio não foi detectada. Em alguns casos, se for determinado que uma mudança do valor absoluto da diferença de energia não esteve dentro de uma faixa predeterminada por pelo me- nos um número predeterminado de quadros, pode ser determinado que a estabilidade espectral do sinal de áudio não é detectada.
[00130] No bloco 1908, é determinado que os parâmetros LPC quantizados foram copiados para pelo menos um número predetermi- nado de quadros antes do quadro atual. Em alguns casos, se os pa- râmetros LPC quantizados foram copiados para vários quadros, os pa- râmetros LPC podem ser forçados a serem quantizados e codificados novamente.
[00131] No bloco 1910, uma quantização é realizada nos parâme- tros LPC para o quadro atual em resposta à determinação de que os parâmetros LPC quantizados foram copiados para pelo menos o nú- mero predeterminado de quadros. Em alguns casos, o número de quadros consecutivos para copiar os parâmetros LPC quantizados é limitado a fim de evitar a propagação do erro quando o pacote de fluxo de bits é perdido no canal de transmissão.
[00132] Em alguns casos, a decisão de cópia de LPC (como mos- trado no espectrograma de 2008) pode ajudar a quantizar o envelope de energia no domínio do tempo. Em alguns casos, quando a decisão de cópia é 1, um nível de energia diferencial entre o quadro atual e o quadro anterior pode ser codificado para salvar bits. Em alguns casos, quando a decisão de cópia é 0, uma quantização direta do nível de energia pode ser realizada para evitar a propagação do erro quando o pacote de fluxo de bits é perdido no canal de transmissão.
[00133] A Figura 21 é um diagrama que ilustra uma estrutura de exemplo de um dispositivo eletrônico 2100 descrito na presente inven- ção, de acordo com uma implementação. O dispositivo eletrônico 2100 inclui um ou mais processadores 2102, uma memória 2104, um circui- to de codificação 2106 e um circuito de decodificação 2108. Em algu- mas implementações, o dispositivo eletrônico 2100 pode incluir ainda um ou mais circuitos para realizar qualquer um ou uma combinação de etapas descritas na presente invenção.
[00134] As implementações descritas da matéria podem incluir uma ou mais características, sozinhas ou em combinação.
[00135] Em uma primeira implementação, um método para realizar a quantização residual inclui: realizar uma primeira quantização resi- dual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quantizado; gerar um segundo sinal residual de destino com base, pelo menos, no primeiro sinal resi-
dual quantizado e no primeiro sinal residual de destino; e realizar uma segunda quantização residual no segundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quanti- zado, em que a primeira taxa de bit é diferente da segunda taxa de bit.
[00136] As outras implementações descritas e as descritas previa- mente podem, opcionalmente, incluir uma ou mais das seguintes ca- racterísticas:
[00137] Uma primeira característica, que pode ser combinada com quaisquer das seguintes características, onde o método ainda inclui: determinar um envelope de energia de domínio de tempo de um sinal residual de entrada; e realizar a quantização no envelope de energia de domínio de tempo para gerar um envelope de energia de domínio de tempo quantizado.
[00138] Uma segunda característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde o método ainda inclui: normalizar o sinal residual de entra- da para gerar o primeiro sinal residual de destino com base no envelo- pe de energia de domínio de tempo quantizado e no sinal residual de entrada.
[00139] Uma terceira característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde realizar a primeira quantização residual no primeiro sinal residual de destino na primeira taxa de bit para gerar o primeiro sinal residual quantizado inclui: realizar uma primeira subquantização de estágio no primeiro sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro sinal de saída de subquantização de estágio, para gerar o primeiro sinal residual quantizado, em que o primeiro tamanho da eta-
pa de quantização é maior do que o segundo tamanho da etapa de quantização.
[00140] Uma quarta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de es- tágio compreende Codificação Uniforme de Etapa Fina.
[00141] Uma quinta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde realizar a segunda quantização residual no segundo sinal residual de destino na segunda taxa de bit para gerar o segundo sinal residual quantizado inclui: realizar uma primeira subquantização de estágio no segundo sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro sinal de saída de subquantização de estágio, para gerar o segundo sinal residual quantizado, em que o primeiro tamanho da eta- pa de quantização é maior do que o segundo tamanho da etapa de quantização.
[00142] Uma sexta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de es- tágio compreendem Codificação Uniforme de Etapa Fina.
[00143] Uma sétima característica, que pode ser combinada com quaisquer das características prévias, onde o primeiro sinal residual de destino compreende uma pluralidade de primeiras amostras, e onde realizar a primeira quantização residual no primeiro sinal residual de destino compreende realizar a primeira quantização residual na plura-
lidade de primeiras amostras em uma forma de amostra por amostra.
[00144] Em uma segunda implementação, um dispositivo eletrônico inclui: um armazenamento de memória não transitório compreendendo instruções, e um ou mais processadores de hardware em comunica- ção com o armazenamento de memória, em que um ou mais proces- sadores de hardware executam as instruções para: realizar uma pri- meira quantização residual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quantizado; gerar um segundo sinal residual de destino com base, pe- lo menos, no primeiro sinal residual quantizado e no primeiro sinal re- sidual de destino; e realizar uma segunda quantização residual no se- gundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quantizado, em que a primeira taxa de bit é diferente da segunda taxa de bit.
[00145] As outras implementações descritas e as descritas previa- mente podem, opcionalmente, incluir uma ou mais das seguintes ca- racterísticas:
[00146] Uma primeira característica, que pode ser combinada com quaisquer das seguintes características, onde um ou mais processado- res de hardware ainda executam as instruções para: determinar um envelope de energia de domínio de tempo de um sinal residual de en- trada; e realizar a quantização no envelope de energia de domínio de tempo para gerar um envelope de energia de domínio de tempo quan- tizado.
[00147] Uma segunda característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde um ou mais processadores de hardware ainda executam as instruções para: normalizar o sinal residual de entrada para gerar o primeiro sinal residual de destino com base no envelope de energia de domínio de tempo quantizado e no sinal residual de entrada.
[00148] Uma terceira característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde realizar a primeira quantização residual no primeiro sinal residual de destino na primeira taxa de bit para gerar o primeiro sinal residual quantizado inclui: realizar uma primeira subquantização de estágio no primeiro sinal residual de destino at a primeiro tamanho da etapa de quantização para gerar a primeiro sinal de saída de subquan- tização de estágio; e realizar a segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro sinal de saída de subquantização de estágio, para gerar o primeiro si- nal residual quantizado, em que o primeiro tamanho da etapa de quan- tização é maior do que o segundo tamanho da etapa de quantização.
[00149] Uma quarta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de es- tágio compreende Codificação Uniforme de Etapa Fina.
[00150] Uma quinta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde realizar a segunda quantização residual no segundo sinal residual de destino na segunda taxa de bit para gerar o segundo sinal residual quantizado inclui: realizar uma primeira subquantização de estágio no segundo sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro sinal de saída de subquantização de estágio, para gerar o segundo sinal residual quantizado, em que o primeiro tamanho da eta- pa de quantização é maior do que o segundo tamanho da etapa de quantização.
[00151] Uma sexta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de es- tágio compreende Codificação Uniforme de Etapa Fina.
[00152] Uma sétima característica, que pode ser combinada com quaisquer das características prévias, onde o primeiro sinal residual de destino compreende uma pluralidade de primeiras amostras, e onde realizar a primeira quantização residual no primeiro sinal residual de destino compreende realizar a primeira quantização residual na plura- lidade de primeiras amostras em uma forma de amostra por amostra.
[00153] Em uma terceira implementação, um meio legível por com- putador não transitório armazena instruções de computador para reali- zar a quantização residual, que quando executadas por um ou mais processadores de hardware, fazem com que um ou mais processado- res de hardware realizem as operações incluindo: realizar uma primei- ra quantização residual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quanti- zado; gerar um segundo sinal residual de destino com base, pelo me- nos, no primeiro sinal residual quantizado e no primeiro sinal residual de destino; e realizar uma segunda quantização residual no segundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quantizado, em que a primeira taxa de bit é di- ferente da segunda taxa de bit.
[00154] As outras implementações descritas e as descritas previa- mente podem, opcionalmente, incluem uma ou mais das seguintes ca- racterísticas:
[00155] Uma primeira característica, que pode ser combinada com quaisquer das seguintes características, onde as operações ainda in-
cluem: determinar um envelope de energia de domínio de tempo de um sinal residual de entrada; e realizar a quantização no envelope de energia de domínio de tempo para gerar um envelope de energia de domínio de tempo quantizado.
[00156] Uma segunda característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde as operações ainda incluem: normalizar o sinal residual de entrada para gerar o primeiro sinal residual de destino com base no envelope de energia de domínio de tempo quantizado e no sinal resi- dual de entrada.
[00157] Uma terceira característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde realizar a primeira quantização residual no primeiro sinal residual de destino na primeira taxa de bit para gerar o primeiro sinal residual quantizado inclui: realizar uma primeira subquantização de estágio no primeiro sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro sinal de saída de subquantização de estágio, para gerar o primeiro sinal residual quantizado, em que o primeiro tamanho da eta- pa de quantização é maior do que o segundo tamanho da etapa de quantização.
[00158] Uma quarta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de es- tágio compreende Codificação Uniforme de Etapa Fina.
[00159] Uma quinta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís-
ticas, onde realizar a segunda quantização residual no segundo sinal residual de destino na segunda taxa de bit para gerar o segundo sinal residual quantizado inclui: realizar uma primeira subquantização de estágio no segundo sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro sinal de saída de subquantização de estágio, para gerar o segundo sinal residual quantizado, em que o primeiro tamanho da eta- pa de quantização é maior do que o segundo tamanho da etapa de quantização.
[00160] Uma sexta característica, que pode ser combinada com quaisquer das características prévias ou com as seguintes caracterís- ticas, onde a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de es- tágio compreende Codificação Uniforme de Etapa Fina.
[00161] Uma sétima característica, que pode ser combinada com quaisquer das características prévias, onde o primeiro sinal residual de destino compreende uma pluralidade de primeiras amostras, e onde realizar a primeira quantização residual no primeiro sinal residual de destino compreende realizar a primeira quantização residual na plura- lidade de primeiras amostras em uma forma de amostra por amostra.
[00162] Embora várias modalidades tenham sido fornecidas na pre- sente invenção, pode ser entendido que os sistemas e métodos descri- tos podem ser incorporados em muitas outras formas específicas sem se afastar do espírito ou escopo da presente invenção. Os presentes exemplos devem ser considerados ilustrativos e não restritivos, e a intenção não deve ser limitada aos detalhes no presente documento fornecidos. Por exemplo, os vários elementos ou componentes podem ser combinados ou integrados em outro sistema ou certos recursos podem ser omitidos ou não implementados.
[00163] Além disso, técnicas, sistemas, subsistemas e métodos descritos e ilustrados nas várias modalidades como discretos ou sepa- rados podem ser combinados ou integrados com outros sistemas, componentes, técnicas ou métodos sem se afastar do escopo da pre- sente invenção. Outros exemplos de mudanças, substituições e altera- ções são verificáveis por um versado na técnica e podem ser feitos sem se afastar do espírito e do escopo descritos neste documento.
[00164] As modalidades da invenção e todas as operações funcio- nais descritas nesta especificação podem ser implementadas em cir- cuitos eletrônicos digitais, ou em software, firmware ou hardware de computador, incluindo as estruturas descritas nesta especificação e seus equivalentes estruturais, ou em combinações de um ou mais de- les. As modalidades da invenção podem ser implementadas como um ou mais produtos de programa de computador, ou seja, um ou mais módulos de instruções de programa de computador codificados em um meio legível por computador para execução por, ou para controlar a operação de, aparelho de processamento de dados. O meio legível por computador pode ser um meio de armazenamento legível por compu- tador não transitório, um dispositivo de armazenamento legível por máquina, um substrato de armazenamento legível por máquina, um dispositivo de memória, uma composição de matéria efetuando um sinal propagado legível por máquina ou uma combinação de um ou mais deles. O termo "aparelho de processamento de dados" abrange todos os aparelhos, dispositivos e máquinas para processamento de dados, incluindo, a título de exemplo, um processador programável, um computador ou vários processadores ou computadores. O apare- lho pode incluir, além do hardware, o código que cria um ambiente de execução para o programa de computador em questão, por exemplo, o código que constitui o firmware do processador, uma pilha de protoco-
los, um sistema de gerenciamento de banco de dados, um sistema operacional ou uma combinação de um ou mais deles. Um sinal pro- pagado é um sinal gerado artificialmente, por exemplo, um sinal elétri- co, óptico ou eletromagnético gerado por máquina que é gerado para codificar informações para transmissão para um aparelho receptor adequado.
[00165] Um programa de computador (também conhecido como um programa, software, aplicativo de software, script ou código) pode ser escrito em qualquer forma de linguagem de programação, incluindo linguagens compiladas ou interpretadas, e pode ser implantado em qualquer forma, incluindo como um suporte programa sozinho ou co- mo um módulo, componente, sub-rotina ou outra unidade adequada para uso em um ambiente de computação. Um programa de computa- dor não corresponde necessariamente a um arquivo em um sistema de arquivos. Um programa pode ser armazenado em uma parte de um arquivo que contém outros programas ou dados (por exemplo, um ou mais scripts armazenados em um documento de linguagem de marca- ção), em um único arquivo dedicado ao programa em questão ou em vários arquivos coordenados (por exemplo, arquivos que armazenam um ou mais módulos, subprogramas ou partes do código). Um pro- grama de computador pode ser implantado para ser executado em um computador ou em vários computadores localizados em um local ou distribuídos em vários locais e interconectados por uma rede de co- municação.
[00166] Os processos e fluxos lógicos descritos nesta especificação podem ser realizados por um ou mais processadores programáveis executando um ou mais programas de computador para executar fun- ções operando em dados de entrada e gerando saída. Os processos e fluxos lógicos também podem ser realizados por, e o aparelho pode ser implementado como, circuitos lógicos de propósito especial, por exemplo, um FPGA (matriz de campo de portas programáveis) ou um ASIC (circuito integrado específico de aplicação).
[00167] Os processadores adequados para a execução de um pro- grama de computador incluem, a título de exemplo, microprocessado- res de uso geral e especial e qualquer um ou mais processadores de qualquer tipo de computador digital. Geralmente, um processador re- ceberá instruções e dados de uma memória somente leitura ou de uma memória de acesso aleatório ou de ambas. Os elementos essen- ciais de um computador são um processador para executar instruções e um ou mais dispositivos de memória para armazenar instruções e dados. Geralmente, um computador também incluirá, ou será operaci- onalmente acoplado para receber dados ou transferir dados para, ou ambos, um ou mais dispositivos de armazenamento em massa para armazenar dados, por exemplo, discos magnéticos, magneto-ópticos ou discos ópticos. No entanto, um computador não precisa ter esses dispositivos. Além disso, um computador pode ser incorporado em ou- tro dispositivo, por exemplo, um computador tablet, um telefone móvel, um assistente digital pessoal (PDA), um reprodutor de áudio móvel, um receptor de Sistema de Posicionamento Global (GPS), para citar apenas alguns. A mídia legível por computador adequada para arma- zenar instruções e dados de programa de computador inclui todas as formas de memória não volátil, mídia e dispositivos de memória, inclu- indo por meio de dispositivos de memória semicondutores de exemplo, por exemplo, EPROM, EEPROM e dispositivos de memória flash; dis- cos magnéticos, por exemplo, discos rígidos internos ou discos remo- víveis; discos magneto-ópticos; e discos de CD-ROM e DVD-ROM. O processador e a memória podem ser complementados por, ou incorpo- rados em, circuitos lógicos de propósito especial.
[00168] Para fornecer interação com um usuário, as modalidades da invenção podem ser implementadas em um computador com um dispositivo de exibição, por exemplo, um monitor CRT (tubo de raios catódicos) ou LCD (tela de cristal líquido), para exibir informações ao usuário e um teclado e um dispositivo apontador, por exemplo, um mouse ou trackball, pelo qual o usuário pode fornecer dados para o computador. Outros tipos de dispositivos também podem ser usados para fornecer interação com o usuário; por exemplo, o feedback forne- cido ao usuário pode ser qualquer forma de feedback sensorial, por exemplo, feedback visual, feedback auditivo ou feedback tátil; e a en- trada do usuário pode ser recebida em qualquer forma, incluindo acús- tica, fala ou entrada tátil.
[00169] As modalidades da invenção podem ser implementadas em um sistema de computação que inclui um componente de back-end, por exemplo, como um servidor de dados, ou que inclui um componen- te de middleware, por exemplo, um servidor de aplicativos, ou que in- clui um componente de front-end, por exemplo, um cliente computador tendo uma interface gráfica de usuário ou um navegador da Web atra- vés do qual um usuário pode interagir com uma implementação da in- venção, ou qualquer combinação de um ou mais de tal back-end, mid- dleware ou componentes de front end. Os componentes do sistema podem ser interconectados por qualquer forma ou meio de comunica- ção de dados digital, por exemplo, uma rede de comunicação. Exem- plos de redes de comunicação incluem uma rede de área local ("LAN") e uma rede de área ampla ("WAN"), por exemplo, a Internet.
[00170] O sistema de computação pode incluir clientes e servidores. Um cliente e um servidor são geralmente remotos um do outro e nor- malmente interagem por meio de uma rede de comunicação. A relação entre cliente e servidor surge em virtude de programas de computador executados nos respectivos computadores e tendo uma relação clien- te-servidor entre si.
[00171] Embora algumas implementações tenham sido descritas em detalhes acima, outras modificações são possíveis. Por exemplo, enquanto um aplicativo cliente é descrito como acessando o(s) dele- gado(s), em outras implementações, o(s) delegado(s) pode(m) ser usado(s) por outros aplicativos implementados por um ou mais pro- cessadores, como um aplicativo em execução em um ou mais servido- res. Além disso, os fluxos lógicos representados nas figuras não re- querem a ordem particular mostrada, ou ordem sequencial, para atingir os resultados desejáveis. Além disso, outras ações podem ser forneci- das, ou ações podem ser eliminadas, dos fluxos descritos e outros componentes podem ser adicionados ou removidos dos sistemas des- critos. Consequentemente, outras implementações estão dentro do escopo das seguintes reivindicações.
[00172] Embora este relatório descritivo contenha muitos detalhes de implementação específicos, estes não devem ser interpretados co- mo limitações no escopo de qualquer invenção ou do que pode ser reivindicado, mas sim como descrições de recursos, que podem ser específicos para modalidades particulares de invenções particulares. Certos recursos que são descritos neste relatório descritivo no contex- to de modalidades separadas também podem ser implementados em combinação em uma única modalidade. Por outro lado, vários recursos que são descritos no contexto de uma única modalidade também po- dem ser implementados em várias modalidades separadamente ou em qualquer subcombinação adequada. Além disso, embora as caracte- rísticas possam ser descritas acima como agindo em certas combina- ções e mesmo inicialmente reivindicadas como tal, uma ou mais carac- terísticas de uma combinação reivindicada podem, em alguns casos, ser extirpadas da combinação, e a combinação reivindicada pode ser direcionada a uma subcombinação ou variação de uma subcombina- ção.
[00173] Da mesma forma, embora as operações sejam representa-
das nos desenhos em uma ordem particular, isso não deve ser enten- dido como exigindo que tais operações sejam realizadas na ordem particular mostrada ou em ordem sequencial, ou que todas as opera- ções ilustradas sejam realizadas, para atingir os resultados desejáveis. Em certas circunstâncias, multitarefa e processamento paralelo podem ser vantajosos. Além disso, a separação de vários módulos de sistema e componentes nas modalidades descritas acima não deve ser enten- dida como requerendo tal separação em todas as modalidades, e deve ser entendido que os componentes e sistemas de programa descritos podem geralmente ser integrados em um único produto de software ou empacotado em vários produtos de software.
[00174] Modalidades particulares da matéria foram descritas. Ou- tras modalidades estão dentro do escopo das seguintes reivindica- ções. Por exemplo, as ações recitadas nas reivindicações podem ser realizadas em uma ordem diferente e ainda alcançar os resultados de- sejáveis. Como um exemplo, os processos descritos nas figuras ane- xas não requerem necessariamente a ordem particular mostrada, ou ordem sequencial, para atingir os resultados desejáveis. Em certas implementações, multitarefa e processamento paralelo podem ser van- tajosos.

Claims (17)

REIVINDICAÇÕES
1. Método implementado por computador para realizar a quantização residual, caracterizado pelo fato de que o método imple- mentado por computador compreende: realizar (1408) uma primeira quantização residual em um primeiro sinal residual de destino em uma primeira taxa de bit para ge- rar um primeiro sinal residual quantizado; gerar (1410) um segundo sinal residual de destino com ba- se, pelo menos, no primeiro sinal residual quantizado e no primeiro sinal residual de destino; e realizar (1412) uma segunda quantização residual no se- gundo sinal residual de destino em uma segunda taxa de bit para gerar um segundo sinal residual quantizado, em que a primeira taxa de bit é diferente da segunda taxa de bit.
2. Método implementado por computador, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda: determinar (1402) um envelope de energia de domínio de tempo de um sinal residual de entrada; e realizar (1404) a quantização no envelope de energia de domínio de tempo para gerar um envelope de energia de domínio de tempo quantizado.
3. Método implementado por computador, de acordo com a reivindicação 2, caracterizado pelo fato de que compreende ainda: normalizar (1406) o sinal residual de entrada para gerar o primeiro sinal residual de destino com base no envelope de energia de domínio de tempo quantizado e no sinal residual de entrada.
4. Método implementado por computador, de acordo com a reivindicação 1, caracterizado pelo fato de que realizar a primeira quantização residual no primeiro sinal residual de destino na primeira taxa de bit para gerar o primeiro sinal residual quantizado compreen- de: realizar uma primeira subquantização de estágio no primei- ro sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro si- nal de saída de subquantização de estágio, para gerar o primeiro sinal residual quantizado, em que o primeiro tamanho da etapa de quantização é maior do que o segundo tamanho da etapa de quantização.
5. Método implementado por computador, de acordo com a reivindicação 4, caracterizado pelo fato de que: a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de estágio compreende Codifi- cação Uniforme de Etapa Fina.
6. Método implementado por computador, de acordo com a reivindicação 1, caracterizado pelo fato de que realizar a segunda quantização residual no segundo sinal residual de destino na segunda taxa de bit para gerar o segundo sinal residual quantizado compreen- de: realizar uma primeira subquantização de estágio no segun- do sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro si- nal de saída de subquantização de estágio, para gerar o segundo sinal residual quantizado, em que o primeiro tamanho da etapa de quantização é maior do que o segundo tamanho da etapa de quantização.
7. Método implementado por computador, de acordo com a reivindicação 6, caracterizado pelo fato de que: a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de estágio compreende Codifi- cação Uniforme de Etapa Fina.
8. Método implementado por computador, de acordo com a reivindicação 1, caracterizado pelo fato de que o primeiro sinal residual de destino compreende uma pluralidade de primeiras amostras, e em que realizar a primeira quantização residual no primeiro sinal residual de destino compreende realizar a primeira quantização residual na plu- ralidade de primeiras amostras em uma forma de amostra por amos- tra.
9. Dispositivo eletrônico (2100), caracterizado pelo fato de que compreende: um armazenamento de memória não transitório (2104) compreendendo instruções; e pelo menos um processador de hardware (2102) em comu- nicação com o armazenamento de memória, em que o pelo menos um processador de hardware executa as instruções para: realizar uma primeira quantização residual em um primeiro sinal residual de destino em uma primeira taxa de bit para gerar um primeiro sinal residual quantizado; gerar um segundo sinal residual de destino com base, pelo menos, no primeiro sinal residual quantizado e no primeiro sinal resi- dual de destino; e realizar uma segunda quantização residual no segundo si-
nal residual de destino em uma segunda taxa de bit para gerar um se- gundo sinal residual quantizado, em que a primeira taxa de bit é diferente da segunda taxa de bit.
10. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 9, caracterizado pelo fato de que compreende ainda: determinar um envelope de energia de domínio de tempo de um sinal residual de entrada; e realizar a quantização no envelope de energia de domínio de tempo para gerar um envelope de energia de domínio de tempo quantizado.
11. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 10, caracterizado pelo fato de que compreende ainda: normalizar o sinal residual de entrada para gerar o primeiro sinal residual de destino com base no envelope de energia de domínio de tempo quantizado e no sinal residual de entrada.
12. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 9, caracterizado pelo fato de que realizar a primeira quantização residual no primeiro sinal residual de destino na primeira taxa de bit para gerar o primeiro sinal residual quantizado compreende: realizar uma primeira subquantização de estágio no primei- ro sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro si- nal de saída de subquantização de estágio, para gerar o primeiro sinal residual quantizado, em que o primeiro tamanho da etapa de quantização é maior do que o segundo tamanho da etapa de quantização.
13. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 12, caracterizado pelo fato de que: a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de estágio compreende Codifi- cação Uniforme de Etapa Fina.
14. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 9, caracterizado pelo fato de que realizar a segunda quantiza- ção residual no segundo sinal residual de destino na segunda taxa de bit para gerar o segundo sinal residual quantizado compreende: realizar uma primeira subquantização de estágio no segun- do sinal residual de destino em um primeiro tamanho da etapa de quantização para gerar um primeiro sinal de saída de subquantização de estágio; e realizar uma segunda subquantização de estágio em um segundo tamanho da etapa de quantização, com base no primeiro si- nal de saída de subquantização de estágio, para gerar o segundo sinal residual quantizado, em que o primeiro tamanho da etapa de quantização é maior do que o segundo tamanho da etapa de quantização.
15. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 14, caracterizado pelo fato de que: a primeira subquantização de estágio compreende Codifi- cação Huffman de Grande Etapa; e a segunda subquantização de estágio compreende Codifi- cação Uniforme de Etapa Fina.
16. Dispositivo eletrônico (2100), de acordo com a reivindi- cação 9, caracterizado pelo fato de que o primeiro sinal residual de destino compreende uma pluralidade de primeiras amostras, e em que realizar a primeira quantização residual no primeiro sinal residual de destino compreende realizar a primeira quantização residual na plura- lidade de primeiras amostras em uma forma de amostra por amostra.
17. Meio legível por computador não transitório armaze- nando instruções de computador para realizar a quantização residual, caracterizado pelo fato de que quando executadas por o pelo menos um processador de hardware, fazem com que o pelo menos um pro- cessador de hardware realize o método como definido em qualquer uma das reivindicações de 1 a 8.
LLB (Banda Baixa-Baixa) Codificador de LLB
Petição 870210063081, de 12/07/2021, pág. 84/176 LHB (Banda Baixa-Alta) Codificador de LHB
Entrada Banco de 96kHz filtro de 1/21
Codificador de HLB análise de WMF Multiplexador
LHB (Banda Alta-Baixa) Codificador de HLB
HHB (Banda Alta-Alta) Codificador de HHB
FIG . 1
Decodificador de LLB
Petição 870210063081, de 12/07/2021, pág. 85/176 Decodificador de LHB
Banco de Saída de 2/21 filtro de Pós- Filtro de 96kHz síntese processo de-ênfase
Canal de WMF
Decodificador de HLB
Decodificador de HHB
FIG . 2
Petição 870210063081, de 12/07/2021, pág. 86/176 Análise de Detecção de Controle de LPC pitch alto taxa de bit
Sinal de LLB Filtro de Quantização Filtro de inclinação Filtro de LPC inverso residual 3/21 ponderação inicial
Ajuste de taxa de bit
Rápida Rápida Condição de LTP contribuição otimização Detecção para melhor PLC de LTP de quanti- espectral de zação pitch alto
Residual quantizado
FIG . 3
Petição 870210063081, de 12/07/2021, pág. 87/176 Residual quantizado Sinal de LLB Filtro de Filtro de decodificado Filtro de ponderação inclinação
LPC inversa inversa 4/21 Contribuição rápida de LTP Sinalizador Sinalizador de pitch alto de pitch alto espectral Sinalizador de comutação de LTP FIG . 4
Petição 870210063081, de 12/07/2021, pág. 88/176 Controle Análise de taxa de LPC de bit 5/21
Rápida Residual Quantização quantizado Sinal de LHB Filtro de otimi- inicial LC inverso zação de residual quantização
FIG . 5
Petição 870210063081, de 12/07/2021, pág. 89/176 6/21
Sinal de LHB Residual Decodificado quantizado Filtro de LPC
FIG . 6
Petição 870210063081, de 12/07/2021, pág. 90/176 Comutação Controle de taxa de de taxa bit de bit
Análise de LPC 7/21
Residual Quantização quantizado residual
Sinal de HLB ou HHB Filtro de LPC inverso
Quantização de envelope de energia
FIG . 7
Petição 870210063081, de 12/07/2021, pág. 91/176 Comutação de taxa de bit
Comutação de taxa de bit Sinal decodificado 8/21 de HLB ou HHB Filtro LPC
Decodificador Geração de envelope residual de energia
FIG . 8
Fundo
FIG . 9 Harmônicas
Ganho Ganho Comprimento Inclinação de pitch de de pitch de atraso de espectral conteúdo suavizado pitch
Detecção de ptch alto
FIG . 10
Receber um sinal de áudio
Gerar um sinal residual de pelo menos um de um ou mais sinais de sub-banda do sinal de áudio
Determinar que pelo menos um sinal de sub-banda é um sinal de pitch alto
Realizar ponderação no sinal residual para gerar um sinal residual ponderado
Gerar um sinal residual quantizado com base no sinal residual ponderado
FIG . 11
Petição 870210063081, de 12/07/2021, pág. 95/176 Codificação Residual de LLB Codificação Norma- Algo inicial Codificação de Huffman de envelope lização uniforme de de grande de energia residual etapa fina etapa 12/21
Codificação Alvo Para canais de bit Codificação de Huffman percepti- uniforme de de grande vamente etapa final etapa otimizado
Ajuste da taxa de bit
FIG . 12
Petição 870210063081, de 12/07/2021, pág. 96/176 Decodi- ficação de Huffman de grande etapa 13/21
Decodifi- Residual de LLB decodificado cação de envelope de energia
Decodi- ficação uniforme deetapa fina
FIG . 13
Determinar um envelope de energia de domínio de tempo de um sinal residual de entrada
Realizar a quantização no envelope de energia de domínio de tempo para gerar um envelope de energia de domínio de tempo quantizado
Normalizar o sinal residual de entrada com base no envelopede energia de domínio de tempo para gerar um primeiro sinal residual de destino
Realizar uma primeira quantização residual no primeiro sinal residual de destino em uma primeira taxa de bit
Gerar um segundo sinal residual de destino
Realizar uma segunda quantização no segundo sinal residual de destino em uma segunda taxa de bit
FIG . 14
Tempo
FIG . 15 Atraso de pitch
Taxa de Busca rápida de
Petição 870210063081, de 12/07/2021, pág. 99/176 amostragem reduzida pitch áspero a 2kHz inicial
Sinal Busca de LLB Filtragem Busca rápida otimizada passa- de pitch fino de pitch baixo fino 16/21
Detecção de Detecção de periodicidade estabilidade
Quantizar/enviar ganho de pitch Condicionalmente redefinir Definir ganho de pitch para e atraso de pith se o ganho de o ganho de pitch a zero para quadro periodicamente pitch for alto melhor PLC alto e estável
FIG . 16
FIG . 17
Receber um sinal de áudio de entrada em uma primeira taxa de amostragem
Reduzir a taxa de amostragem do sinal de áudio de entrada
Determinar um primeiro atraso de pitch em uma segunda taxa de amostragem
Determinar um segundo atraso de pitch com base no primeiro atraso de pitch
Determinar um segundo atraso de pitch com base no primeiro atraso de pitch
Determinar que um ganho de pitch do sinal de áudiode entrada excedeu um limite predeterminado e uma mudança do atraso de pitch do sinal de áudio de entrada foi dentro de uma faixa predeterminada por pelo menos um número predeterminado de quadros
Definir um ganho de pitch para um quadro atual
FIG . 18
Determinar pelo menos uma inclinação de espectro de diferencial e uma diferença de energia entre um quadro atual e um quadro prévio de um sinal de áudio
Detectar uma estabilidade espectral do sinal de áudio
Copiar parâmetros de LPC quantizados para o quadro prévio no quadro atual do sinal de áudio
Determinar que os parâmetros de LPC quantizados foram copiados para pelo menos um número predeterminado de quadros
Realizar uma quantização nos parâmetros de LPC para o quadro atual
FIG . 19
FIG . 20
Processador
Memória
Circuito de codificação
Circuito de decodificação
FIG . 21
BR112021013726-2A 2019-01-13 2020-01-13 Método implementado por computador para realizar quantização residual, dispositivo eletrônico e meio legível por computador não transitório BR112021013726A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962791821P 2019-01-13 2019-01-13
US62/791,821 2019-01-13
PCT/US2020/013296 WO2020146868A1 (en) 2019-01-13 2020-01-13 High resolution audio coding

Publications (1)

Publication Number Publication Date
BR112021013726A2 true BR112021013726A2 (pt) 2021-09-21

Family

ID=71521784

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021013726-2A BR112021013726A2 (pt) 2019-01-13 2020-01-13 Método implementado por computador para realizar quantização residual, dispositivo eletrônico e meio legível por computador não transitório

Country Status (5)

Country Link
US (1) US11735193B2 (pt)
JP (1) JP7262593B2 (pt)
CN (1) CN113302688A (pt)
BR (1) BR112021013726A2 (pt)
WO (1) WO2020146868A1 (pt)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220392460A1 (en) * 2021-06-04 2022-12-08 Apple Inc. Enabling stereo content for voice calls

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07118658B2 (ja) * 1986-03-26 1995-12-18 日本電信電話株式会社 信号符号化方法
JPS63289600A (ja) * 1987-05-21 1988-11-28 日本電信電話株式会社 音声符号化方式
JPH02143735A (ja) * 1988-11-25 1990-06-01 Victor Co Of Japan Ltd 音声多段符号化伝送方式
JP3246715B2 (ja) * 1996-07-01 2002-01-15 松下電器産業株式会社 オーディオ信号圧縮方法,およびオーディオ信号圧縮装置
US6226616B1 (en) * 1999-06-21 2001-05-01 Digital Theater Systems, Inc. Sound quality of established low bit-rate audio coding systems without loss of decoder compatibility
US6446037B1 (en) * 1999-08-09 2002-09-03 Dolby Laboratories Licensing Corporation Scalable coding method for high quality audio
US6496798B1 (en) * 1999-09-30 2002-12-17 Motorola, Inc. Method and apparatus for encoding and decoding frames of voice model parameters into a low bit rate digital voice message
JP2002208860A (ja) 2001-01-05 2002-07-26 Rooran:Kk データ圧縮装置とそのデータ圧縮方法及びデータ圧縮用プログラムを記録したコンピュータ読み取り可能な記録媒体、並びにデータ伸長装置とそのデータ伸長方法
JP4464707B2 (ja) 2004-02-24 2010-05-19 パナソニック株式会社 通信装置
WO2005096508A1 (fr) * 2004-04-01 2005-10-13 Beijing Media Works Co., Ltd Equipement de codage et de decodage audio ameliore, procede associe
JP5235684B2 (ja) 2006-02-24 2013-07-10 フランス・テレコム 信号包絡線の量子化インデックスをバイナリ符号化する方法、信号包絡線を復号化する方法、および、対応する符号化および復号化モジュール
WO2010031003A1 (en) * 2008-09-15 2010-03-18 Huawei Technologies Co., Ltd. Adding second enhancement layer to celp based core layer
KR20110001130A (ko) * 2009-06-29 2011-01-06 삼성전자주식회사 가중 선형 예측 변환을 이용한 오디오 신호 부호화 및 복호화 장치 및 그 방법
US8452606B2 (en) * 2009-09-29 2013-05-28 Skype Speech encoding using multiple bit rates
AU2011240239B2 (en) * 2010-04-13 2014-06-26 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio or video encoder, audio or video decoder and related methods for processing multi-channel audio or video signals using a variable prediction direction
US8560330B2 (en) * 2010-07-19 2013-10-15 Futurewei Technologies, Inc. Energy envelope perceptual correction for high band coding
US9082416B2 (en) * 2010-09-16 2015-07-14 Qualcomm Incorporated Estimating a pitch lag
KR20140085453A (ko) * 2011-10-27 2014-07-07 엘지전자 주식회사 음성 신호 부호화 방법 및 복호화 방법과 이를 이용하는 장치
US9691406B2 (en) * 2013-06-05 2017-06-27 Dolby Laboratories Licensing Corporation Method for encoding audio signals, apparatus for encoding audio signals, method for decoding audio signals and apparatus for decoding audio signals
EP2830065A1 (en) * 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding an encoded audio signal using a cross-over filter around a transition frequency
EP2980793A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoder, decoder, system and methods for encoding and decoding
CN108109629A (zh) * 2016-11-18 2018-06-01 南京大学 一种基于线性预测残差分类量化的多描述语音编解码方法和系统
EP3762923A1 (en) * 2018-03-08 2021-01-13 Nokia Technologies Oy Audio coding

Also Published As

Publication number Publication date
US11735193B2 (en) 2023-08-22
WO2020146868A1 (en) 2020-07-16
JP7262593B2 (ja) 2023-04-21
US20210343299A1 (en) 2021-11-04
JP2022517233A (ja) 2022-03-07
CN113302688A (zh) 2021-08-24

Similar Documents

Publication Publication Date Title
JP6439296B2 (ja) 復号装置および方法、並びにプログラム
JP5247148B2 (ja) 残響サウンド信号のコーディング
ES2673319T3 (es) Control de coherencia de fase para señales armónicas en códecs de audio perceptual
BR112013005958B1 (pt) método para misturar dois sinais de entrada de áudio em um único sinal de áudio misturado, dispositivo para misturar sinais, meio de armazenamento legível por processador e dispositivo para misturar sinais de entrada de áudio em um único sinal de áudio misturado
JP2012503791A (ja) 信号処理方法及び装置
US20210343302A1 (en) High resolution audio coding
US11735193B2 (en) High resolution audio coding
Mores Music studio technology
BR112021013720A2 (pt) Método implementado por computador para codificação de áudio, dispositivo eletrônico e meio legível por computador não transitório
US11715478B2 (en) High resolution audio coding
RU2800626C2 (ru) Кодирование звука высокого разрешения
KR100891669B1 (ko) 믹스 신호의 처리 방법 및 장치