BR112020009114A2 - aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sistema que compreende um lado do codificador e um lado do decodificador, método para determinar um atraso de pitch e programa que compreende instruções - Google Patents

aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sistema que compreende um lado do codificador e um lado do decodificador, método para determinar um atraso de pitch e programa que compreende instruções Download PDF

Info

Publication number
BR112020009114A2
BR112020009114A2 BR112020009114-6A BR112020009114A BR112020009114A2 BR 112020009114 A2 BR112020009114 A2 BR 112020009114A2 BR 112020009114 A BR112020009114 A BR 112020009114A BR 112020009114 A2 BR112020009114 A2 BR 112020009114A2
Authority
BR
Brazil
Prior art keywords
estimate
delay
pitch
ltpf
correlation
Prior art date
Application number
BR112020009114-6A
Other languages
English (en)
Inventor
Emmanuel RAVELLI
Martin Dietz
Michael Schnabel
Arthur Tritthart
Alexander TSCHEKALINSKIJ
Original Assignee
Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. filed Critical Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Publication of BR112020009114A2 publication Critical patent/BR112020009114A2/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/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
    • G10L19/09Long term prediction, i.e. removing periodical redundancies, e.g. by using adaptive codebook or pitch predictor
    • 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/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/90Pitch determination of speech signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3059Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
    • H03M7/3064Segmenting
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6005Decoder aspects
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6011Encoder aspects

Landscapes

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

Abstract

Existem técnicas propostas (por exemplo, em aparelhos, métodos, programas) para selecionar atraso de pitch. Um aparelho (10, 60a, 110) para codificar um sinal de informações que inclui uma pluralidade de quadros. O aparelho pode compreender um primeiro estimador (11) configurado para obter uma primeira estimativa (14, T1), sendo que a primeira estimativa é uma estimativa de um atraso de pitch para um quadro atual (13). O aparelho pode compreender um segundo estimador (12) configurado para obter uma segunda estimativa (16, T2), sendo que a segunda estimativa é outra estimativa de um atraso de pitch para o quadro atual (13). Um seletor (17) pode ser configurado para escolher (S103) um valor selecionado (19, Tmelhor) realizando-se uma seleção entre a primeira estimativa (14, T1) e a segunda estimativa (16, T2), com base em uma primeira e uma segunda medição de correlação (23, 25). O segundo estimador (12) pode ser condicionado pelo atraso do pitch (51, 19) selecionado no quadro anterior de modo a obter a segunda estimativa (16, T2) para o quadro atual (13). O seletor (17) pode ser configurado para realizar uma comparação entre: uma versão reduzida (24) de uma primeira medição de correlação (23) associada ao quadro atual (13) e obtida em um atraso correspondente à primeira estimativa (14, T1); e uma segunda medição de correlação (25) associada ao quadro atual (13) e obtida em um atraso correspondente à segunda estimativa (16, T2). Por conseguinte, é possível selecionar a primeira estimativa (14, T1), quando a segunda medição de correlação (25) for menor que a versão reduzida (24) da primeira medição de correlação (23) e/ou selecionar a segunda estimativa (16 , T2), quando a segunda medição de correlação (25) for maior que a versão reduzida (24) da primeira medição de correlação (23). Pelo menos uma dentre a primeira e a segunda medição de correlação (23, 25) pode ser uma medição de autocorrelação e/ou uma medição normalizada de autocorrelação.

Description

Relatório Descritivo da Patente de Invenção para “APARELHO PARA CODIFICAR UM SINAL DE INFORMAÇÕES QUE INCLUI UMA PLURALIDADE DE QUADROS,
SISTEMA QUE COMPREENDE UM LADO DO CODIFICADOR E UM LADO DO DECODIFICADOR, MÉTODO PARA DETERMINAR UM ATRASO DE PITCH E PROGRAMA QUE COMPREENDE INSTRUÇÕES” DESCRIÇÃO
[001] São fornecidos, no presente documento, exemplos de métodos e aparelhos que têm capacidade de realizar um procedimento de detecção de pitch de baixa complexidade, por exemplo, para codificação pós-filtragem a longo prazo, LTPF.
[002] Por exemplo, os exemplos têm capacidade de selecionar um atraso de pitch para um sinal de informações, por exemplo, sinal de áudio, por exemplo, para realizar a LTPF.
1.1. ANTECEDENTES
[003] Os codecs de áudio baseados em transformação geralmente apresentam ruído inter-harmônico ao processar sinais de áudio harmônicos, particularmente com baixo atraso e baixa taxa de bits. Esse ruído inter-harmônico geralmente é percebido como um artefato muito irritante, o que reduz significativamente o desempenho do codec de áudio baseado em transformação quando avaliado subjetivamente em material de áudio altamente tonal.
[004] A filtragem de longo prazo pós-filtro (LTPF) é uma ferramenta para codificação de áudio baseada em transformação que ajuda a reduzir esse ruído inter- harmônico. Isso se baseia em um pós-filtro que é aplicado ao sinal no domínio do tempo após a decodificação da transformação. Esse pós-filtro é essencialmente um filtro de resposta infinita ao impulso (IIR), com uma resposta de frequência do tipo pente controlada por dois parâmetros: um atraso de pitch e um ganho.
[005] Para uma melhor robustez, os parâmetros pós-filtro (um atraso de pitch e/ou um ganho por quadro) são estimados no lado do codificador e codificados em um fluxo de bits quando o ganho é diferente de zero. O caso do ganho zero é sinalizado com um bit e corresponde a um pós-filtro inativo, usado quando o sinal não contém uma parte harmônica.
[006] A LTPF foi introduzida pela primeira vez no padrão 3GPP EVS [1] e, posteriormente, integrada ao padrão de áudio 3D MPEG-H [2]. As patentes correspondentes são [3] e [4].
[007] Um algoritmo de detecção de pitch estima um atraso de pitch por quadro. Isso geralmente é realizado a uma baixa taxa de amostragem (por exemplo, 6,4 kHz) a fim de reduzir a complexidade. Idealmente, deve ser fornecida uma estimativa precisa, estável e contínua.
[008] Quando usado para codificar a LTPF, é mais importante ter um contorno de pitch contínuo; caso contrário, alguns artefatos de instabilidade podem ser ouvidos no sinal de saída filtrado por LTPF. Não ter uma frequência fundamental verdadeira F0 (por exemplo, ter um múltiplo da mesma) é de menor importância, devido ao fato de que isso não resulta em artefatos graves, mas, em vez disso, resulta em uma leve degradação do desempenho da LTPF.
[009] Outra característica importante de um algoritmo de detecção de pitch é sua complexidade computacional. Quando implantada em um codec de áudio que tem como alvo dispositivos de baixa potência, ou mesmo dispositivos de ultra-baixa potência, sua complexidade computacional deve ser a mais baixa possível.
1.2. TÉCNICA ANTERIOR
[010] Há um exemplo de um codificador LTPF, que pode ser encontrado no domínio público. Isso é descrito no padrão 3GPP EVS [1]. Essa implantação está usando um algoritmo de detecção de pitch descrito na seção 5.1.10 das especificações de padrão. Esse algoritmo de detecção de pitch tem um bom desempenho e funciona bem com a LTPF, devido ao fato de que fornece um contorno de pitch muito estável e contínuo. Sua principal desvantagem é, no entanto, sua complexidade relativamente alta.
[011] Mesmo que nunca tenham sido usados para codificação LTPF, outros algoritmos de detecção de pitch existentes poderiam, em tese, ser usados para LTPF. Um exemplo é o YIN [6], um algoritmo de detecção de pitch geralmente reconhecido como um dos mais precisos. YIN é, no entanto, muito complexo, até significativamente mais do que o de [1].
[012] Outro exemplo que vale a pena mencionar é o algoritmo de detecção de pitch usado no padrão 3GPP AMR-WB [7], que tem uma complexidade significativamente menor do que a de [1], mas também com desempenho pior, particularmente dando um contorno de pitch menos estável e contínuo.
[013] A técnica anterior compreende as seguintes revelações:
[1] 3GPP TS 26.445; Codec for Enhanced Voice Services (EVS); Detailed algorithmic description.
[2] ISO/IEC 23008-3:2015; Information technology -- High efficiency coding and media delivery in heterogeneous environments -- Parte 3: áudio 3D.
[3] Ravelli et al. “Apparatus and method for processing an audio signal using a harmonic post-filter.” Pedido de Patente nº U.S. 2017/0140769 A1. 18 de maio de
2017.
[4] Markovic et al. “Harmonicity-dependent controlling of a harmonic filter tool.” Pedido de Patente nº U.S. 2017/0133029 A1. 11 de maio de 2017.
[5] ITU-T G.718 : Frame error robust narrow-band and wideband embedded variable bit-rate coding of speech and audio from 8-32 kbit/s.
[6] De Cheveigné, Alain e Hideki Kawahara. “YIN, a fundamental frequency estimator for speech and music.” The Journal of the Acoustical Society of America
111.4 (2002): 1917-1930.
[7] 3GPP TS 26.190; Speech codec speech processing functions; Adaptive Multi-Rate - Wideband (AMR-WB) speech codec; Transcoding functions.
[014] Existem alguns casos, no entanto, para os quais a estimativa do atraso de pitch deve ser melhorada.
[015] Os algoritmos atuais de detecção de pitch de baixa complexidade (como o descrito em [7]) têm um desempenho que não é satisfatório para LTPF, particularmente, para sinais complexos, como música polifônica. O contorno do pitch pode ser muito instável, mesmo em tons estacionários. Isso ocorre devido a saltos entre os máximos locais da função de autocorrelação ponderada.
[016] Por isso, há a necessidade de obter estimativas de atraso de pitch que melhor se adaptem a sinais complexos, com a mesma ou menor complexidade que a técnica anterior.
2. SUMÁRIO DA INVENÇÃO
[017] De acordo com exemplos, é fornecido um aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sendo que o aparelho compreende: um primeiro estimador configurado para obter uma primeira estimativa, sendo que a primeira estimativa é uma estimativa de um atraso de pitch para um quadro atual; um segundo estimador configurado para obter uma segunda estimativa, sendo que a segunda estimativa é outra estimativa de um atraso de pitch para o quadro atual, um seletor configurado para escolher um valor selecionado realizando-se uma seleção entre a primeira estimativa e a segunda estimativa, com base em uma primeira e uma segunda medição de correlação, em que o segundo estimador é condicionado pelo atraso de pitch selecionado no quadro anterior, de modo a obter a segunda estimativa para o quadro atual, caracterizado por o seletor ser configurado para: realizar uma comparação entre: uma versão reduzida de uma primeira medição de correlação associada ao quadro atual e obtida em um atraso correspondente à primeira estimativa; e uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa, de modo a selecionar a primeira estimativa, quando a segunda medição de correlação for menor que a versão reduzida da primeira medição de correlação e/ou para selecionar a segunda estimativa, quando a segunda medição de correlação for maior que a versão reduzida da primeira medição de correlação, em que pelo menos uma dentre a primeira e a segunda medição de correlação é uma medição de autocorrelação e/ou uma medição normalizada de autocorrelação.
[018] De acordo com os exemplos, é fornecido um aparelho para codificar um sinal de informações em um fluxo de bits (63), que inclui uma pluralidade de quadros, sendo que o aparelho (60a) compreende: sendo que uma unidade de detecção compreende: um primeiro estimador configurado para obter uma primeira estimativa, sendo que a primeira estimativa é uma estimativa de um atraso de pitch para um quadro atual; um segundo estimador configurado para obter uma segunda estimativa, sendo que a segunda estimativa é outra estimativa de um atraso de pitch para o quadro atual, em que o segundo estimador é condicionado pelo atraso de pitch selecionado no quadro anterior, de modo a obter a segunda estimativa para o atual quadro; um seletor configurado para escolher um valor selecionado realizando-se uma seleção entre a primeira estimativa e a segunda estimativa, com base em pelo menos uma medição de correlação, em que o seletor é configurado para realizar uma comparação entre: uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa; e um limiar de seleção do atraso de pitch, de modo a selecionar a segunda estimativa, quando a segunda medição de correlação for maior que o limiar de seleção do atraso do pitch; e/ou selecionar a primeira estimativa, quando a segunda medição de correlação for menor que o limiar de seleção do atraso do pitch; e uma ferramenta de pós-filtragem de longo prazo, LTPF, configurada para codificar dados úteis para realizar a LTPF no decodificador, sendo que os dados úteis para realizar a LTPF incluem o valor selecionado.
[019] De acordo com exemplos, é fornecido um aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sendo que o aparelho compreende: um primeiro estimador configurado para obter uma primeira estimativa, sendo que a primeira estimativa é uma estimativa de um atraso de pitch para um quadro atual; um segundo estimador configurado para obter uma segunda estimativa, sendo que a segunda estimativa é outra estimativa de um atraso de pitch para o quadro atual, um seletor configurado para escolher um valor selecionado realizando-se uma seleção entre a primeira estimativa e a segunda estimativa, com base em pelo menos uma medição de correlação, em que o segundo estimador é condicionado pelo atraso de pitch selecionado no quadro anterior, de modo a obter a segunda estimativa para o quadro atual.
[020] De acordo com exemplos, o seletor está configurado para realizar uma comparação entre: uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa; e um limiar de seleção do atraso de pitch, de modo a selecionar a segunda estimativa, quando a segunda medição de correlação for maior que o limiar de seleção do atraso do pitch; e/ou para selecionar a primeira estimativa, quando a segunda medição de correlação for menor que o limiar de seleção do atraso do pitch.
[021] De acordo com exemplos, o seletor está configurado para realizar uma comparação entre: uma primeira medição de correlação associada ao quadro atual e obtida em um atraso correspondente à primeira estimativa; e uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa, de modo a selecionar a primeira estimativa, quando a primeira medição de correlação for pelo menos maior que a segunda medição de correlação e/ou para selecionar a segunda estimativa, quando a primeira medição de correlação for pelo menos menor que a segunda medição de correlação.
[022] De acordo com exemplos, o seletor é configurado para: realizar uma comparação entre: uma versão reduzida de uma primeira medição de correlação associada ao quadro atual e obtida em um atraso correspondente à primeira estimativa; e uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa, de modo a selecionar a primeira estimativa, quando a segunda medição de correlação for menor que a versão reduzida da primeira medição de correlação e/ou para selecionar a segunda estimativa, quando a segunda medição de correlação for maior que a versão reduzida da primeira medição de correlação.
[023] De acordo com os exemplos, pelo menos uma dentre a primeira e a segunda medição de correlação é uma medição de autocorrelação e/ou uma medição normalizada de autocorrelação.
[024] Um codificador de transformação para gerar uma representação do sinal de informações ou uma versão processada do mesmo pode ser implantado.
[025] De acordo com os exemplos, o segundo estimador está configurado para: obter a segunda estimativa buscando-se o atraso que maximiza uma segunda função de correlação em um segundo subintervalo que contém o atraso de pitch selecionado para o quadro anterior.
[026] De acordo com os exemplos, o segundo subintervalo contém atrasos a uma distância menor que um limiar de número de atraso predefinido, a partir do atraso de pitch selecionado para o quadro anterior.
[027] De acordo com os exemplos, o segundo estimador está configurado para:
buscar um valor máximo entre os valores da segunda função de correlação para associar a segunda estimativa ao atraso associado ao valor máximo entre os valores da segunda função de correlação.
[028] De acordo com os exemplos, o primeiro estimador é configurado para: obter a primeira estimativa como o atraso que maximiza uma primeira função de correlação associada ao quadro atual.
[029] De acordo com os exemplos, a primeira função de correlação é restrita aos atrasos em um primeiro subintervalo.
[030] De acordo com os exemplos, o primeiro subintervalo contém um número de atrasos maior que o segundo subintervalo, e/ou pelo menos alguns dos atrasos no segundo subintervalo são compreendidos no primeiro subintervalo.
[031] De acordo com os exemplos, o primeiro estimador é configurado para: ponderar os valores de medição de correlação da primeira função de correlação com uso de uma função de ponderação monotonicamente decrescente, antes de buscar o atraso que maximiza a primeira função de correlação.
[032] De acordo com os exemplos, pelo menos uma dentre a segunda e a primeira função de correlação é uma função de autocorrelação e/ou uma função normalizada de autocorrelação.
[033] De acordo com os exemplos, o primeiro estimador é configurado para obter a primeira estimativa𝑇1 realizando-se pelo menos algumas das seguintes operações: 𝑇1 = argmax 𝑅𝑤 (𝑘) 𝑘=𝑘𝑚𝑖𝑛 …𝑘𝑚𝑎𝑥 𝑅𝑤 (𝑘) = 𝑅(𝑘)𝑤(𝑘)𝑔𝑎𝑟𝑓𝑜 = 𝑘𝑚𝑖𝑛 . . 𝑘𝑚𝑎𝑥 (𝑘 − 𝑘𝑚𝑖𝑛 ) 𝑤(𝑘) = 1 − 0,5 𝑔𝑎𝑟𝑓𝑜 = 𝑘𝑚𝑖𝑛 . . 𝑘𝑚𝑎𝑥 (𝑘𝑚𝑎𝑥 − 𝑘𝑚𝑖𝑛 ) 𝑁−1 𝑅(𝑘) = ∑ 𝑥(𝑛)𝑥(𝑛 − 𝑘)𝑔𝑎𝑟𝑓𝑜 = 𝑘𝑚𝑖𝑛 . . 𝑘𝑚𝑎𝑥 𝑛=0 𝑤(𝑘)ser uma função de ponderação𝑘𝑚𝑖𝑛 e 𝑘𝑚𝑎𝑥 estar associado a um atraso mínimo e um atraso máximo, 𝑅 ser um valor de medição de autocorrelação estimado com base no sinal de informações ou em uma versão processada do mesmo e em que N é o comprimento do quadro.
[034] De acordo com os exemplos, o segundo estimador é configurado para obter a segunda estimativa𝑇2 realizando-se: 𝑇2 = argmax 𝑅(𝑘) ′ 𝑘=𝑘𝑚𝑖𝑛 ′ …𝑘𝑚𝑎𝑥 ′ ′ sendo que 𝑘𝑚𝑖𝑛 = max (𝑘𝑚𝑖𝑛 , 𝑇𝑎𝑛𝑡 − 𝛿), 𝑘𝑚𝑎𝑥 = min (𝑘𝑚𝑎𝑥 , 𝑇𝑎𝑛𝑡 + 𝛿), 𝑇𝑎𝑛𝑡 é a estimativa selecionada no quadro anterior e 𝛿 é uma distância de 𝑇𝑝𝑟𝑒𝑣 , 𝑘𝑚𝑖𝑛 e 𝑘𝑚𝑎𝑥 que está associado a um atraso mínimo e a um atraso máximo.
[035] De acordo com os exemplos, o seletor é configurado para realizar uma seleção da estimativa𝑇𝑐𝑢𝑟𝑟 do atraso do pitch em termos de 𝑇 se normcorr(𝑥, 𝑁, 𝑇2 ) ≤ 𝛼normcorr(𝑥, 𝑁, 𝑇1 ) 𝑇𝑎𝑡𝑢𝑎𝑙 = { 1 𝑇2 ao contrário sendo que 𝑇1 é a primeira estimativa, sendo que 𝑇2 é a segunda estimativa, sendo que 𝑥 é um valor do sinal de informações ou uma versão processada do mesmo, sendo que normcorr(𝑥, 𝑁, 𝑇) é a medição de correlação normalizada do sinal 𝑥 de comprimento 𝑁 no atraso 𝑇, 𝛼 que é um coeficiente de redução.
[036] De acordo com os exemplos, é fornecida, a jusante do seletor, uma ferramenta de pós-filtragem a longo prazo, LTPF, para controlar um pós-filtro a longo prazo, em um aparelho decodificador.
[037] De acordo com os exemplos, o sinal de informações é um sinal de áudio.
[038] De acordo com os exemplos, o aparelho é configurado para obter a primeira medição de correlação como uma medida de harmonicidade do quadro atual e a segunda medição de correlação como uma medida de harmonicidade do quadro atual restrita a um subintervalo definido para o quadro anterior.
[039] De acordo com os exemplos, o aparelho é configurado para obter a primeira e segunda medição de correlação com uso da mesma função de correlação, até uma função de ponderação.
[040] De acordo com exemplos, o aparelho é configurado para obter a primeira medição de correlação como a versão normalizada da primeira estimativa até uma função de ponderação.
[041] De acordo com exemplos, o aparelho é configurado para obter a segunda medição de correlação como a versão normalizada da segunda estimativa.
[042] De acordo com exemplos, é fornecido um sistema que compreende um lado do codificador e um lado do decodificador, sendo que o lado do codificador é como acima, em que o lado do decodificador compreende uma ferramenta de pós- filtragem de longo prazo controlada com base na estimativa de atraso do pitch selecionada pelo seletor.
[043] De acordo com os exemplos, é fornecido um método para determinar um atraso de pitch para um sinal dividido em quadros, que compreende: realizar uma primeira estimativa para um quadro atual; realizar uma segunda estimativa para o quadro atual; e selecionar entre a primeira estimativa obtida na primeira estimativa e a segunda estimativa obtida na segunda estimativa, com base em pelo menos uma medição de correlação, em que a realização da segunda estimativa é obtida com base no resultado de uma etapa de seleção realizada no quadro anterior. De acordo com os exemplos, o método pode compreender o uso do atraso selecionado para pós-filtragem a longo prazo, LTPF.
[044] De acordo com exemplos, o método pode compreender o uso do atraso selecionado para ocultação de pacotes perdidos, PLC.
[045] De acordo com os exemplos, é fornecido um método para determinar um atraso de pitch para um sinal dividido em quadros, que compreende: realizar uma primeira estimativa para um quadro atual; realizar uma segunda estimativa para o quadro atual; e selecionar entre a primeira estimativa obtida na primeira estimativa e a segunda estimativa obtida na segunda estimativa, com base em medições de correlação, em que a realização da segunda estimativa é obtida com base no resultado de uma etapa de seleção realizada no quadro anterior, distinguido por selecionar incluir realizar uma comparação entre: uma versão reduzida de uma primeira medição de correlação associada ao quadro atual e obtida em um atraso correspondente à primeira estimativa; e uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa; e selecionar a primeira estimativa, quando a segunda medição de correlação for menor que a versão reduzida da primeira medição de correlação e/ou selecionar a segunda estimativa, quando a segunda medição de correlação for maior que a versão reduzida da primeira medição de correlação, em que pelo menos uma dentre a primeira e a segunda medição de correlação é uma medição de autocorrelação e/ou uma medição normalizada de autocorrelação.
[046] De acordo com os exemplos, é fornecido um método para codificar um fluxo de bits para um sinal dividido em quadros, que compreende: realizar uma primeira estimativa para um quadro atual; realizar uma segunda estimativa para o quadro atual; e selecionar entre a primeira estimativa obtida na primeira estimativa e a segunda estimativa obtida na segunda estimativa, com base em pelo menos uma medição de correlação, em que a realização da segunda estimativa é obtida com base no resultado de uma etapa de seleção realizada no quadro anterior, em que selecionar inclui realizar uma comparação entre: uma segunda medição de correlação associada ao quadro atual e obtida em um atraso correspondente à segunda estimativa; e um limiar de seleção do atraso de pitch, selecionar a segunda estimativa, quando a segunda medição de correlação for maior que o limiar de seleção do atraso do pitch e/ou selecionar a primeira estimativa, quando a segunda medição de correlação for menor que o limiar de seleção do atraso do pitch; e sendo que o método compreende adicionalmente a codificação de dados úteis para a execução de LTPF no decodificador do valor selecionado.
[047] De acordo com os exemplos, é fornecido um programa que compreende instruções que, quando executadas por um processador, fazem com que o processador realize qualquer um dos métodos acima ou abaixo.
3. DESCRIÇÃO DOS DESENHOS
[048] As Figuras 1a e 2 mostram o aparelho, de acordo com os exemplos.
[049] A Figura 1b mostra um método, de acordo com um exemplo.
[050] As Figuras 3 e 4 mostram os métodos, de acordo com os exemplos.
[051] As Figuras 5 e 5(1) a 5(4) mostram diagramas de funções de correlação.
[052] A Figura 6 mostra um sistema, de acordo com a invenção.
[053] As figuras 7 e 8 mostram aparelhos, de acordo com a invenção.
[054] A Figura 9 mostra um exemplo de operação no decodificador.
5. EXEMPLOS DE SELEÇÕES E ESTIMATIVAS
[055] Exemplos de procedimentos, sistemas e aparelhos de detecção de pitch de baixa complexidade, por exemplo, para codificação e/ou decodificação de LTPF, são revelados.
[056] Um sinal de informações pode ser descrito no domínio do tempo, TD, como uma sucessão de amostras (por exemplo, x(n)) adquiridas em diferentes instantes de tempo discretos (n). A representação TD pode compreender uma pluralidade de quadros, cada um associado a uma pluralidade de amostras. Os quadros podem ser vistos em uma sequência, um após o outro, de modo que um quadro atual esteja temporalmente antes de um quadro subsequente e temporalmente após um quadro anterior. É possível operar iterativamente, de modo que as operações executadas no quadro anterior sejam repetidas para o quadro atual.
[057] Durante uma iteração associada a um quadro atual, é possível executar pelo menos algumas operações (por exemplo, uma segunda estimativa) que são condicionadas pela seleção realizada na iteração anterior associada ao quadro anterior. Por isso, o histórico do sinal no quadro anterior é levado em consideração, por exemplo, para selecionar o atraso do pitch a ser usado pelo decodificador para realizar pós-filtragem de longo prazo (LTPF).
5.1 ESTRUTURA E FUNÇÃO GERAL, DE ACORDO COM OS
EXEMPLOS
[058] A Figura 1a mostra uma porção de um aparelho 10 para codificar um sinal de informações. O aparelho 10 pode compreender um primeiro estimador 11 configurado para realizar um primeiro processo de estimativa para obter uma primeira estimativa 14 (T1) para um quadro atual 13. O aparelho 10 pode compreender um segundo estimador 12 configurado para executar um segundo processo de estimativa para obter uma segunda estimativa 16 (T2) para o quadro atual 13). O aparelho 10 pode compreender um seletor 17 configurado para realizar uma seleção 18 entre a primeira estimativa 14 e a segunda estimativa 16, com base em pelo menos uma medição de correlação (o elemento representado pelo comutador 17a é controlado pelo elemento 17). Uma estimativa (final) de saída 19 (Tmelhor) é escolhida entre a primeira estimativa 14 e a segunda estimativa 16 e pode ser, por exemplo, fornecida a um decodificador, por exemplo, para realizar LTPF. A estimativa (final) de saída 19 será usada como o atraso de pitch da LTPF.
[059] A estimativa final (valor selecionado) 19 também pode ser inserida em um registrador 19' e ser usada ao realizar uma iteração no quadro subsequente, como uma entrada 19" (Tant), para o segundo estimador 12, em relação a uma seleção operada anteriormente. Para cada quadro 13, o segundo estimador 12 obtém a segunda estimativa 16, com base na estimativa final anterior 19” para o quadro anterior.
[060] A Figura 1b mostra um método 100 (por exemplo, para determinar um atraso de pitch final a ser usado para LPTF) para um sinal dividido em quadros. O método compreende a realização de uma primeira estimativa (estimativa de atraso de pitch) para um quadro atual na etapa S101. O método compreende a realização de uma segunda estimativa para o quadro atual na etapa S102, sendo que a segunda estimativa é baseada na seleção operada no quadro anterior (por exemplo, o atraso de pitch final escolhido para a LTPF no quadro anterior). O método compreende selecionar entre a primeira estimativa 14 e a segunda estimativa 16 com base em pelo menos uma medição de correlação na etapa S103.
[061] Posteriormente, na etapa S104, os quadros são atualizados: o quadro que era o “quadro atual” se torna o “quadro anterior”, enquanto um novo quadro (subsequente) se torna o novo “quadro atual”. Após a atualização, o método pode ser iterado.
[062] A Figura 2 mostra uma porção de um aparelho 10 (que pode ser o mesmo da Figura 1a) para codificar um sinal de informações. No seletor 17, um primeiro medidor 21 pode medir uma primeira correlação (por exemplo, uma correlação normalizada) 23 associada ao quadro atual 13 (por exemplo, a autocorrelação normalizada da primeira estimativa T1). Um segundo medidor 22 pode medir uma segunda correlação (por exemplo, uma correlação normalizada) 25 associada ao quadro atual 13 (por exemplo, a autocorrelação normalizada da segunda estimativa T2). A primeira correlação normalizada 23 pode ser reduzida no escalonador 26 por um valor predeterminado α que pode ser, por exemplo, um valor entre 0,8 e 0,9, mais particularmente, 0,84 e 0,86, e que pode ser 0,85. A segunda correlação (por exemplo, uma correlação normalizada) 25 associada ao quadro atual 13 pode ser comparada à primeira correlação escalonada 24, por exemplo, (nos exemplos, o escalonador 26 é opcional, e a primeira correlação não é escalonada). A seleção 18 entre a primeira estimativa 14 (T1) e a segunda estimativa 16 (T2) é baseada na comparação realizada no comparador 27. Quando a segunda correlação 25 é maior que a primeira correlação escalonada 24, a segunda estimativa 16 é escolhida como informações de atraso de pitch, como estimativa de saída selecionada 19 (Tmelhor = T2) a ser fornecida ao decodificador (por exemplo, para ser usada como o atraso do pitch para LTPF). Quando a segunda correlação 25 é inferior à primeira correlação escalonada 24, a primeira estimativa 14 (T1) é escolhida como as informações de atraso do pitch 19 (Tmelhor = T1) a serem fornecidas ao decodificador.
5.2 PRIMEIRA ESTIMATIVA
[063] As operações do primeiro estimador 11 que podem ser usadas, nos exemplos, para fornecer uma primeira estimativa 14, com base no quadro atual 13,
são discutidas no presente documento. O método 30 é mostrado na Figura 3. ETAPA 1. REAMOSTRAR A 1O ESTÁGIO (ETAPA S31)
[064] Um sinal de entrada 𝑥(𝑛) na taxa de amostragem 𝐹 é reamostrado a uma taxa de amostragem inferior 𝐹1 (por exemplo, 𝐹1 = 12,8 𝑘𝐻𝑧). A reamostragem pode ser implantada, por exemplo, com uso de uma abordagem clássica de amostragem ascendente + passa-baixa + amostragem descendente. A presente etapa é opcional em alguns exemplos. ETAPA 2. FILTRAGEM PASSA-ALTA (ETAPA S21)
[065] O sinal reamostrado é, então, filtrado com passa-alta, por exemplo, com uso de um filtro IIR de 2 ordens com limite de 3dB a 50Hz. O sinal resultante é observado 𝑥1 (𝑛). A presente etapa é opcional em alguns exemplos. ETAPA 3. REAMOSTRAR O 2O ESTÁGIO (ETAPA S33)
[066] O sinal 𝑥1 (𝑛) é adicionalmente reduzido por um fator de 2, com uso, por exemplo, de um filtro passa-baixa FIR de 4 ordens, seguido por um decimador. O sinal resultante à taxa de amostragem 𝐹2 = 𝐹1 /2 (por exemplo, 𝐹2 = 6,4 𝑘𝐻𝑧) é observado 𝑥2 (𝑛). A presente etapa é opcional em alguns exemplos. ETAPA 4. COMPUTAÇÃO DE AUTOCORRELAÇÃO (ETAPA S34)
[067] Um processo de autocorrelação pode ser realizado. Por exemplo, uma autocorrelação pode ser processada em 𝑥2 (𝑛), por 𝑁−1 𝑅(𝑇) = ∑ 𝑥2 (𝑛)𝑥2 (𝑛 − 𝑇), 𝑇 = 𝑇𝑚𝑖𝑛 , … , 𝑇𝑚𝑎𝑥 𝑛=0 com 𝑁 é o tamanho do quadro. 𝑇𝑚𝑖𝑛 e 𝑇𝑚𝑎𝑥 são os valores mínimo e máximo para recuperar o atraso do pitch (por exemplo, Tmin = 32 e Tmax = 228). Tmin e Tmax pode, por isso, constituir as extremidades de um primeiro intervalo, em que a primeira estimativa (atraso do pitch do quadro atual) deve ser encontrada. ETAPA 5. PONDERAÇÃO DE AUTOCORRELAÇÃO (ETAPA S35)
[068] A autocorrelação pode ser ponderada a fim de enfatizar os atrasos do pitch inferior 𝑅𝑤 (𝑇) = 𝑅(𝑇)𝑤(𝑇), 𝑇 = 𝑇𝑚𝑖𝑛 , … , 𝑇𝑚𝑎𝑥 com 𝑤(𝑇) é uma função decrescente (por exemplo, uma função monotonicamente decrescente), dada, por exemplo, por (𝑇 − 𝑇𝑚𝑖𝑛 ) 𝑤(𝑇) = 1 − 0,5 , 𝑇 = 𝑇𝑚𝑖𝑛 , … , 𝑇𝑚𝑎𝑥 (𝑇𝑚𝑎𝑥 − 𝑇𝑚𝑖𝑛 ) ETAPA 6. PRIMEIRA ESTIMATIVA (ETAPA S36)
[069] A primeira estimativa 𝑇1 é o valor que maximiza a autocorrelação ponderada: 𝑇1 = argmax 𝑅𝑤 (𝑇) 𝑇=𝑇𝑚𝑖𝑛 ,…,𝑇𝑚𝑎𝑥
[070] A primeira estimativa 𝑇1 pode ser fornecida como saída 14 do primeiro estimador 11. Isso pode ser uma estimativa do atraso do pitch para o quadro atual.
[071] 𝑅(𝑇) (ou sua versão ponderada 𝑅𝑤 (𝑇)) é um exemplo de uma primeira função de correlação, cujo valor máximo está associado à primeira estimativa de atraso de pitch 14 (T1).
5.3 SEGUNDA ESTIMATIVA
[072] As operações do segundo estimador 12 (e/ou etapa S102) que podem ser usadas, em exemplos, para fornecer uma segunda estimativa 16 com base no quadro atual 13 e na estimativa selecionada anteriormente (de saída) 19” (atraso de pitch obtido para o quadro anterior) são discutidas no presente documento. O método 40 é mostrado na Figura 4. A segunda estimativa 16 pode ser diferente da primeira estimativa 14. Além disso, o atraso de pitch estimado pode ser diferente, em alguns exemplos, do atraso de pitch, conforme estimado anteriormente.
[073] Em referência à Figura 5, de acordo com exemplos, na etapa S41, a busca é restrita a um grupo restrito de atrasos, que estão dentro de um segundo subintervalo 52 particular. A busca é baseada no atraso 51, que corresponde ao valor (anteriormente) selecionado 19”. A busca é restrita aos atrasos, no segundo subintervalo 52, que estão dentro de um valor δ (que pode ser, por exemplo, escolhido entre 2, 3, 4, 5, 6, 7, 8, 9, 10 ou outro número natural positivo; em alguns exemplos, δ pode ser uma porcentagem do comprimento do quadro, de modo que, se o quadro tiver N amostras, δ é um percentual entre 1% e 30%, em particular 15% e 25%, de N) δ pode ser um limiar de número de atraso predefinido ou uma porcentagem predefinida.
[074] De acordo com os exemplos, na etapa S42, os valores de autocorrelação dentro do subintervalo 52 são calculados, por exemplo, pelo segundo medidor 22.
[075] De acordo com exemplos, na etapa S42, o valor máximo entre os resultados da autocorrelação é recuperado. A segunda estimativa T2 é o valor que maximiza a autocorrelação na vizinhança do atraso do pitch do quadro atual entre os atrasos dentro do segundo subintervalo centralizado no valor anteriormente selecionado 19", por exemplo: T2 = argmax R(T) T=Tant −δ,…,Tant +δ em que 𝑇𝑎𝑛𝑡 é o atraso de pitch final 51 (19”), conforme anteriormente selecionado (pelo seletor 17) e 𝛿 a constante (por exemplo, 𝛿 = 4) que define o subintervalo 52. O valor T2 pode ser fornecido como saída 16 do segundo estimador
12.
[076] Notavelmente, a primeira estimativa 14 e a segunda estimativa 16 podem ser significativamente diferentes uma da outra.
[077] 𝑅(𝑇) (cujo domínio aqui é restrito entre Tant-δ e Tant + δ) é um exemplo de uma segunda função de correlação, cujo valor máximo está associado à segunda estimativa de atraso de pitch 16 (T2).
5.4 PRIMEIRA E SEGUNDA MEDIÇÕES DE CORRELAÇÃO
[078] O primeiro medidor 21 e/ou o segundo medidor 22 podem realizar medições de correlação. O primeiro medidor 21 e/ou o segundo medidor 22 podem executar medições de autocorrelação. As medições de correlação e/ou autocorrelação podem ser normalizadas. Um exemplo é fornecido no presente documento.
[079] normcorr(T) pode ser a correlação normalizada do sinal x no atraso de pitch
T ∑N−1 n=0 x(n)x(n − T) normcorr(T) = 2 N−1 2 √∑N−1 n=0 x (n) ∑n=0 x (n − T)
[080] Por isso, a primeira medição de correlação 23 pode ser normcorr(T 1), em que T1 é a primeira estimativa 14 e a segunda medição de correlação 25 pode ser normcorr(T2), em que T2 é a segunda estimativa 16.
[081] Notavelmente, a primeira medição de correlação 23 é o valor normalizado de R(T1) (ou Rw(T1)), enquanto a segunda medição de correlação 25 é o valor normalizado de R(T2).
5.5 COMPARAÇÃO COM O LIMIAR
[082] Agora é possível dar um exemplo de como comparar a correlação para realizar a seleção. Como exemplo, é fornecido pela seguinte fórmula: T se normcorr(T2 ) ≤ αnormcorr(T1 ) Tmelhor = { 1 T2 ao contrário
[083] αnormcorr(T1 ) pode ser visto como um limiar de seleção do atraso de pitch 24: se normcorr(T2 ) ≤ αnormcorr(T1 ), o seletor escolhe T1 , caso contrário, o seletor escolheráT2 . O valor Tmelhor (ou informações associadas ao mesmo) pode, por isso, ser o valor de saída selecionado 19 (como T1 ou T2) e fornecido ao decodificador (por exemplo, para LTPF) e que será usado, como 19”, pelo segundo estimador 12 para obter a segunda estimativa 16.
5.6 O MÉTODO 40
[084] O método 40, associado ao método 30, aumenta os desempenhos, em relação a uma técnica apenas com base no método 30.
[085] Com pequena complexidade adicional, é possível melhorar significativamente o desempenho, tornando o contorno do pitch mais estável e contínuo.
[086] O método 40 encontra um segundo máximo para a função de autocorrelação. Não é o máximo global como no método 30, mas um máximo local na vizinhança do atraso do pitch do quadro anterior. Esse segundo atraso do pitch, se selecionado, produz um contorno do pitch suave e contínuo. No entanto, não foi selecionado esse segundo atraso de pitch em todos os casos. Se houver uma mudança esperada na frequência fundamental, por exemplo, é melhor manter o máximo global.
[087] A seleção final é se o primeiro atraso de pitch 𝑇1 (14) foi encontrado no método 30 ou o segundo atraso de pitch 𝑇2 (16) encontrado no método 40. Essa decisão é baseada em uma medida de periodicidade. Foi escolhida a correlação normalizada como medida de periodicidade. É 1, se o sinal for perfeitamente periódico, e 0, se for aperiódico. O segundo atraso do pitch 𝑇2 é, então, escolhido se a correlação normalizada correspondente for maior que a correlação normalizada do primeiro atraso do pitch 𝑇1 , dimensionada por um parâmetro 𝛼. Esse parâmetro 𝛼 < 1 torna a decisão ainda mais suave, selecionando-se 𝑇2 (16), mesmo quando a correlação normalizada está ligeiramente abaixo da correlação normalizada do primeiro atraso de pitch 𝑇1 (14).
5.7 CONSIDERAÇÕES SOBRE A TÉCNICA
[088] É feita referência às Figuras 5(1) a 5(4).
[089] Um exemplo de primeira estimativa é mostrado na Figura 5(1): é escolhido o atraso do pitch que corresponde ao máximo da função de autocorrelação.
[090] Isso se baseia no fato de que a autocorrelação de um sinal harmônico (com um determinado pitch) contém picos na posição do atraso do pitch e todos os múltiplos desse atraso do pitch.
[091] Para evitar selecionar um pico correspondente a um múltiplo do atraso do pitch, a função de autocorrelação é ponderada, como na Figura 5(2), dando menos ênfase aos atrasos de pitch maiores. Isso é usado, por exemplo, em [7].
[092] Presume-se que o máximo global da autocorrelação ponderada, então, corresponda ao atraso do pitch do sinal.
[093] Em geral, a primeira estimativa feita sozinha funciona satisfatoriamente: fornece o pitch correto na grande maioria dos quadros.
[094] A primeira estimativa também tem a vantagem de uma complexidade relativamente baixa, se o número de atrasos da função de autocorrelação (primeiro subintervalo) for relativamente baixo.
[095] A Figura 5(1) mostra a autocorrelação (não ponderada) do sinal de entrada.
[096] Há cinco picos: o primeiro pico 53 corresponde ao atraso do pitch e os outros correspondem aos múltiplos 53' desse atraso do pitch.
[097] Obter o máximo global da autocorrelação (sem peso) daria, nesse caso, o atraso de pitch errado: seria escolhido um múltiplo do mesmo, nesse caso, 4 vezes o atraso de pitch correto.
[098] No entanto, o máximo global da autocorrelação ponderada (Figura 5(2)) é o atraso de pitch correto.
[099] A primeira estimativa funciona em vários casos. No entanto, existem alguns casos em que é produzida uma estimativa instável.
[0100] Um desses casos é um sinal musical polifônico, que contém uma mistura de vários tons, com pitches diferentes. Nesse caso, é difícil extrair um único pitch de um sinal de pitch múltiplo. O primeiro estimador 11 poderia, nesse caso, estimar, em um quadro, o pitch de um dos tons (ou mesmo talvez um múltiplo do mesmo) e, no quadro seguinte, possivelmente, o pitch de outro tom (ou um múltiplo do mesmo). Por isso, mesmo que o sinal seja estável (o pitch dos diferentes tons não muda de um quadro para o próximo), o pitch detectado pela primeira estimativa pode ser instável (o pitch muda significativamente de um quadro para o outro).
[0101] Esse comportamento instável é um grande problema para a LTPF. Quando o pitch é usado para LTPF, é mais importante ter um pitch de contorno contínuo; caso contrário, alguns artefatos podem ser ouvidos no sinal de saída filtrado por LTPF.
[0102] As Figuras 5(3) e 5(4) ilustram esse problema.
[0103] A Figura 5(3) mostra a autocorrelação ponderada e seu máximo em um quadro de um sinal estável de múltiplos pitches. Um atraso de pitch 19" é corretamente recuperado em "20", em correspondência com o pico 54.
[0104] A Figura 5(4) mostra o mesmo no quadro subsequente.
[0105] Nesse caso, os três primeiros picos 54', 54"e 54'" têm uma amplitude muito próxima. Por isso, alterações suaves entre os dois quadros consecutivos podem alterar significativamente o máximo global e o atraso do pitch estimado.
[0106] A solução adotada na presente invenção soluciona esses problemas de instabilidade.
[0107] A presente solução seleciona, além do atraso do pitch associado ao pico no quadro, um atraso do pitch que está próximo ao atraso do pitch do quadro anterior.
[0108] Por exemplo, a Figura 5(3) corresponde ao quadro anterior, e a Figura 5(4)
corresponde ao quadro atual. O que se pretende é verificar se é preferencial selecionar, no quadro atual, um atraso do pitch em torno de 20 (ou seja, o atraso de pitch 19” ou Tant do quadro anterior) e não um atraso de pitch de 40, conforme fornecido pelo primeiro estimador 11.
[0109] Para fazer isso, uma segunda estimativa é realizada (por exemplo, pelo segundo estimador 12), estimando-se um segundo atraso de pitch T2, que maximiza a função de autocorrelação em torno de um subintervalo 52 do atraso de pitch do quadro anterior (Tant - δ, Tant + 5). No caso da Figura 5(4), esse segundo atraso de pitch T2 seria 20 (sendo que o primeiro atraso de pitch é 40). (Mesmo que nesse caso T2 = Tant, essa não é uma regra de geração. Em geral, Tant - δ ≤ T2 ≤ Tant + δ). Notavelmente, nos exemplos, a fim de estimar T2, a autocorrelação não é ponderada.
[0110] No entanto, não se deseja selecionar, em todos os casos, esse segundo atraso do pitch T2. O que se deseja é selecionar o primeiro atraso do pitch T 1 ou o segundo atraso do pitch T2, com base em alguns critérios. Esse critério é baseado na correlação normalizada (NC), por exemplo, medida pelo seletor 17, que geralmente é considerado uma boa medida de quão periódico é um sinal em algum atraso do pitch particular (um NC de 0 significa que não é periódico), um NC de 1 significa perfeitamente periódico).
[0111] Então, há vários casos: - Se o NC da segunda estimativa T2 for maior que o NC da primeira estimativa T1: é possível ter certeza de que a segunda estimativa T2 é melhor que a primeira estimativa T1, porque a segunda estimativa T2 tem uma NC melhor e produz uma decisão estável (o pitch do quadro anterior e o pitch do quadro atual estão muito próximos), para que possamos selecionar o mesmo com segurança. - Se o NC da segunda estimativa T2 for muito menor que o NC da primeira estimativa: isso indica que o pitch 19” do quadro anterior não corresponde a nenhuma periodicidade no quadro atual, o sinal é instável e o pitch mudou, então, não faz sentido manter o pitch 19” do quadro anterior e tentar produzir uma decisão estável. Nesse caso, a segunda estimativa T2 é ignorada, e a primeira estimativa T1 é selecionada. - Se o NC da segunda estimativa T2 for ligeiramente menor que o NC da primeira estimativa T1: o NC das estimativas T1 e T2 estará próximo e, nesse caso, é preferencial escolher a estimativa que produz uma decisão estável (ou seja, a segunda estimativa T2), mesmo que tenha NC ligeiramente pior. O parâmetro α (α <1) é usado para esse caso: permite selecionar a segunda estimativa T 2, mesmo que tenha NC um pouco menor. O ajuste desse parâmetro α permite inclinar a seleção para a primeira estimativa T1 ou a segunda estimativa T2: um valor menor significa que a segunda estimativa seria selecionada com mais frequência (= a decisão seria mais estável). 0,85 (ou um valor entre 0,8 e 0,9) é uma boa compensação: é selecionada a segunda estimativa T2 com frequência suficiente para que a decisão seja estável o suficiente para LTPF.
[0112] As etapas adicionais fornecidas no topo da primeira estimativa (segunda estimativa e seleção) têm uma complexidade muito baixa. Por isso, a invenção proposta tem baixa complexidade.
6. EXEMPLOS DE SISTEMAS DE CODIFICAÇÃO/ DECODIFICAÇÃO
[0113] A Figura 6 mostra um esquema de blocos relacionado às operações de codificação/decodificação. O esquema mostra um sistema 60 que compreende um codificador 60a (que pode compreender o aparelho 10) e um decodificador 60b. O codificador 60a obtém um sinal de informações de entrada 61 (que pode ser um sinal de áudio e/ou pode ser dividido entre quadros, como o quadro atual 13 e o quadro anterior) e prepara um fluxo de bits 63. O decodificador 60b obtém o fluxo de bits 63 (por exemplo, sem fio, por exemplo, com uso de Bluetooth) para gerar um sinal de saída 68 (por exemplo, um sinal de áudio).
[0114] O codificador 60a pode gerar, com uso de um codificador de transformação 62, uma representação no domínio da frequência 63a (ou uma versão processada do mesmo) do sinal de informações 61 e fornecer o mesmo ao decodificador 60b no fluxo de bits 63. O decodificador 60b pode compreender um decodificador de transformação para obter o sinal de saídas 64a.
[0115] O codificador 60a pode gerar, com uso de uma unidade de detecção 65, dados úteis para realizar LTPF no decodificador 60b. Esses dados podem compreender uma estimativa de atraso do pitch (por exemplo, 19) e/ou uma informações de ganho. Esses dados podem ser codificados no fluxo de bits 63 como dados 63b nos campos de controle. Os dados 63b (que podem compreender a estimativa final 19 do atraso do pitch) podem ser preparados por um codificador LTPF 66 (que, em alguns exemplos, pode decidir se codifica os dados 63b). Esses dados podem ser usados por um decodificador LTPF 67 que pode aplicar os mesmos ao sinal de saída 64a do decodificador de transformação 64 para obter o sinal de saídas
68.
7. EXEMPLOS, POR EXEMPLO, PARA LTPF
7.1 PARÂMETROS (POR EXEMPLO, PARÂMETROS DE LTPF) NO
CODIFICADOR
[0116] Os exemplos dos cálculos dos parâmetros LTPF (ou outros tipos de parâmetros) são fornecidos no presente documento.
[0117] Um exemplo de preparação das informações para a LTPF é fornecido nas próximas subseções.
7.2.1. REAMOSTRAGEM
[0118] Um exemplo de técnica de reamostragem (opcional) é discutido no presente documento (outras técnicas podem ser usadas).
[0119] O sinal de entrada na taxa de amostragem 𝑓𝑠 pode ser reamostrado para uma taxa de amostragem fixa de 12,8 kHz. A reamostragem é realizada com uso de uma abordagem de amostragem ascendente + filtro passa-baixa + amostragem descendente, que pode ser formulada da seguinte maneira 120
𝑃 15𝑛 120 𝑥12,8 (𝑛) = 𝑃 ∑ 𝑥 (⌊ ⌋+𝑘− ) ℎ6.4 (𝑃𝑘 − 15𝑛 mod 𝑃) 𝑓𝑜𝑟𝑛 = 0. .127
𝑃 𝑃 120 𝑘=−
𝑃 com ⌊ ⌋ indicando um valor em troca (arredondado para o número inteiro 192kHz abaixo), x(n) é o sinal de entrada, x12,8 (n) é o sinal reamostrado a 12,8 kHz, P = f s é o fator de subamostragem e h6,4 é a resposta de impulso de um filtro passa-baixa
FIR fornecido por tab_resamp_filter[n + 119] , se − 120 < 𝑛 < 120 h6.4 (n) = { 0 , ao contrário
[0120] Um exemplo de tab_resamp_filter é fornecido na tabela a seguir: double tab_resamp_filter[239] = { -2,043055832879108e-05, -4,463458936757081e-05, -7,163663994481459e-05, -1,001011132655914e-04, -1,283728480660395e-04, -1,545438297704662e-04, -1,765445671257668e-04, -1,922569599584802e-04, -1,996438192500382e-04, -1,968886856400547e-04, -1,825383318834690e-04, -1,556394266046803e-04, -1,158603651792638e-04, -6,358930335348977e-05, +2,810064795067786e-19, +7,292180213001337e-05, +1,523970757644272e-04, +2,349207769898906e-04, +3,163786496265269e-04, +3,922117380894736e-04, +4,576238491064392e-04, +5,078242936704864e-04, +5,382955231045915e-04, +5,450729176175875e-04, +5,250221548270982e-04, +4,760984242947349e-04, +3,975713799264791e-04, +2,902002172907180e-04, +1,563446669975615e-04, -5,818801416923580e-19, -1,732527127898052e-04, -3,563859653300760e-04, -5,411552308801147e-04, -7,184140229675020e-04, -8,785052315963854e-04, -1,011714513697282e-03, -1,108767055632304e-03, -1,161345220483996e-03, -1,162601694464620e-03, -1,107640974148221e-03, -9,939415631563015e-04, -8,216921898513225e-04, -5,940177657925908e-04, -3,170746535382728e-04, +9,746950818779534e-19, +3,452937604228947e-04, +7,044808705458705e-04, +1,061334465662964e-03, +1,398374734488549e-03, +1,697630799350524e-03, +1,941486748731660e-03, +2,113575906669355e-03, +2,199682452179964e-03, +2,188606246517629e-03, +2,072945458973295e-03, +1,849752491313908e-03, +1,521021876908738e-03, +1,093974255016849e-03, +5,811080624426164e-04, -1,422482656398999e-18, -6,271537303228204e-04, -1,274251404913447e-03, -1,912238389850182e-03, -2,510269249380764e-03, -3,037038298629825e-03, -3,462226871101535e-03, -3,758006719596473e-03, -3,900532466948409e-03, -3,871352309895838e-03, -3,658665583679722e-03, -3,258358512646846e-03, -2,674755551508349e-03, -1,921033054368456e-03, -1,019254326838640e-03, +1,869623690895593e-18,
+1,098415446732263e-03, +2,231131973532823e-03, +3,348309272768835e-03, +4,397022774386510e-03, +5,323426722644900e-03, +6,075105310368700e-03, +6,603520247552113e-03, +6,866453987193027e-03, +6,830342695906946e-03, +6,472392343549424e-03, +5,782375213956374e-03, +4,764012726389739e-03, +3,435863514113467e-03, +1,831652835406657e-03, -2,251898372838663e-18, -1,996476188279370e-03, -4,082668858919100e-03, -6,173080374929424e-03, -8,174448945974208e-03, -9,988823864332691e-03, -1,151698705819990e-02, -1,266210056063963e-02, -1,333344579518481e-02, -1,345011199343934e-02, -1,294448809639154e-02, -1,176541543002924e-02, -9,880867320401294e-03, -7,280036402392082e-03, -3,974730209151807e-03, +2,509617777250391e-18, +4,586044219717467e-03, +9,703248998383679e-03, +1,525124770818010e-02, +2,111205854013017e-02, +2,715337236094137e-02, +3,323242450843114e-02, +3,920032029020130e-02, +4,490666443426786e-02, +5,020433088017846e-02, +5,495420172681558e-02, +5,902970324375908e-02, +6,232097270672976e-02, +6,473850225260731e-02, +6,621612450840858e-02, +6,671322871619612e-02, +6,621612450840858e-02, +6,473850225260731e-02, +6,232097270672976e-02, +5,902970324375908e-02, +5,495420172681558e-02, +5,020433088017846e-02, +4,490666443426786e-02, +3,920032029020130e-02, +3,323242450843114e-02, +2,715337236094137e-02, +2,111205854013017e-02, +1,525124770818010e-02, +9,703248998383679e-03, +4,586044219717467e-03, +2,509617777250391e-18, -3,974730209151807e-03, -7,280036402392082e-03, -9,880867320401294e-03, -1,176541543002924e-02, -1,294448809639154e-02, -1,345011199343934e-02, -1,333344579518481e-02, -1,266210056063963e-02, -1,151698705819990e-02, -9,988823864332691e-03, -8,174448945974208e-03, -6,173080374929424e-03, -4,082668858919100e-03, -1,996476188279370e-03, -2,251898372838663e-18, +1,831652835406657e-03, +3,435863514113467e-03, +4,764012726389739e-03, +5,782375213956374e-03, +6,472392343549424e-03, +6,830342695906946e-03, +6,866453987193027e-03, +6,603520247552113e-03, +6,075105310368700e-03, +5,323426722644900e-03, +4,397022774386510e-03, +3,348309272768835e-03,
+2,231131973532823e-03, +1,098415446732263e-03, +1,869623690895593e-18, -1,019254326838640e-03, -1,921033054368456e-03, -2,674755551508349e-03, -3,258358512646846e-03, -3,658665583679722e-03, -3,871352309895838e-03, -3,900532466948409e-03, -3,758006719596473e-03, -3,462226871101535e-03, -3,037038298629825e-03, -2,510269249380764e-03, -1,912238389850182e-03, -1,274251404913447e-03, -6,271537303228204e-04, -1,422482656398999e-18, +5,811080624426164e-04, +1,093974255016849e-03, +1,521021876908738e-03, +1,849752491313908e-03, +2,072945458973295e-03, +2,188606246517629e-03, +2,199682452179964e-03, +2,113575906669355e-03, +1,941486748731660e-03, +1,697630799350524e-03, +1,398374734488549e-03, +1,061334465662964e-03, +7,044808705458705e-04, +3,452937604228947e-04, +9,746950818779534e-19, -3,170746535382728e-04, -5,940177657925908e-04, -8,216921898513225e-04, -9,939415631563015e-04, -1,107640974148221e-03, -1,162601694464620e-03, -1,161345220483996e-03, -1,108767055632304e-03, -1,011714513697282e-03, -8,785052315963854e-04, -7,184140229675020e-04, -5,411552308801147e-04, -3,563859653300760e-04, -1,732527127898052e-04, -5,818801416923580e-19, +1,563446669975615e-04, +2,902002172907180e-04, +3,975713799264791e-04, +4,760984242947349e-04, +5,250221548270982e-04, +5,450729176175875e-04, +5,382955231045915e-04, +5,078242936704864e-04, +4,576238491064392e-04, +3,922117380894736e-04, +3,163786496265269e-04, +2,349207769898906e-04, +1,523970757644272e-04, +7,292180213001337e-05, +2,810064795067786e-19, -6,358930335348977e-05, -1,158603651792638e-04, -1,556394266046803e-04, -1,825383318834690e-04, -1,968886856400547e-04, -1,996438192500382e-04, -1,922569599584802e-04, -1,765445671257668e-04, -1,545438297704662e-04, -1,283728480660395e-04, -1,001011132655914e-04, -7,163663994481459e-05, -4,463458936757081e-05, -2,043055832879108e-05};
7.2.2. FILTRAGEM DE PASSA-ALTA
[0121] Um exemplo da técnica de filtro passa-alta (opcional) é discutido no presente documento (outras técnicas podem ser usadas).
[0122] Um exemplo da técnica de filtro passa-alta (opcional) é discutido no presente documento (outras técnicas podem ser usadas). 0,9827947082978771 − 1,965589416595754𝑧 −1 + 0,9827947082978771𝑧 −2 𝐻50 (𝑧) = 1 − 1,9652933726226904𝑧 −1 + 0,9658854605688177𝑧 −2
7.2.3. DETECÇÃO DE PITCH
[0123] Um exemplo de técnica de detecção de pitch é discutido no presente documento (outras técnicas podem ser usadas).
[0124] O sinal x12.8 (n) pode ser (opcionalmente) reduzido por um fator de 2 com uso de 4 x6,4 (n) = ∑ x12,8 (2n + k − 3)h2 (k) forn = 0. .63 k=0 com h2 = {0,1236796411180537, 0,2353512128364889, 0,2819382920909148, 0,2353512128364889, 0,1236796411180537}.
[0125] A autocorrelação de x6.4 (n) pode ser calculada por 63 R 6,4 (k) = ∑ x6,4 (n)x6,4 (n − k)para k = k min . . k max n=0 com k min = 17 e k max = 114 são os atrasos mínimos e máximos que definem o primeiro subintervalo (outros valores para k min e k max podem ser fornecidos).
[0126] A autocorrelação pode ser ponderada com uso de Rw 6,4 (k) = R 6,4 (k)w(k)para k = k min . . k max Sendo que w(k) é definido da seguinte forma (k − k min ) w(k) = 1 − 0,5 para k = k min . . k max (k max − k min )
[0127] A primeira estimativa 14 do atraso de pitch T1 pode ser a que maximiza a autocorrelação ponderada T1 = argmax Rw 6,4 (k) k=kmin …kmax
[0128] A segunda estimativa 16 do atraso de pitch T2 pode ser o atraso que maximiza a autocorrelação não ponderada na vizinhança do atraso do pitch (19”) estimado no quadro anterior T2 = argmax R 6,4 (k) k=k′min …k′max com k ′min = max (k min , Tant − 4), k ′max = min (k max , Tant + 4) e Tant é o atraso de pitch final estimado no quadro anterior (e sua seleção, por isso, condicionada pelo atraso de pitch selecionado anteriormente).
[0129] A estimativa final 19 do atraso de pitch no quadro atual 13 pode então ser fornecida por T se normcorr(x6,4 , 64, T2 ) ≤ 0,85.normcorr(x6,4 , 64, T1 ) Tatual = { 1 T2 ao contrário sendo que normcorr(x, L, T) é a correlação normalizada do sinal x de comprimento L no atraso T ∑L−1 n=0 x(n)x(n − T) normcorr(x, L, T) = √∑L−1 2 L−1 2 n=0 x (n) ∑n=0 x (n − T)
[0130] Cada correlação normalizada 23 ou 25 pode ser pelo menos uma das medições obtidas pelo primeiro ou segundo medidor de sinal 21 ou 22.
7.2.4. FLUXO DE BITS DE LTPF
[0131] Em alguns exemplos, o primeiro bit do fluxo de bits LTPF sinaliza a presença do parâmetro atraso do pitch no fluxo de bits. Isso é obtido por 1 ifnormcorr(𝑥6,4 , 64, 𝑇𝑎𝑡𝑢𝑎𝑙 ) > 0,6 pitch_present = { 0 ao contrário
[0132] (Em vez de 0,6, um limiar diferente, por exemplo, entre 0,4 e 0,8 ou 0,5 e 0,7 ou 0,55 e 0,65 pode ser usado, por exemplo).
[0133] (Em vez de 0,6, um limiar diferente, por exemplo, entre 0,4 e 0,8 ou 0,5 e 0,7 ou 0,55 e 0,65 pode ser usado, por exemplo).
[0134] Se pitch_present for 1, mais dois parâmetros serão codificados, um parâmetro de atraso do pitch codificado em 9 bits e um bit para sinalizar a ativação da LTPF. Nesse caso, o fluxo de bits LTPF é composto por 11 bits. 1 , 𝑠𝑒 pitch_present = 0 𝑛𝑏𝑖𝑡𝑠𝐿𝑇𝑃𝐹 = { 11 , 𝑎𝑜 𝑐𝑜𝑛𝑡𝑟á𝑟𝑖𝑜
7.2.5. PARÂMETROS DE ATRASO DO PITCH LTPF
[0135] Um exemplo para obter parâmetros de atraso de pitch LTPF é discutido no presente documento (outras técnicas podem ser usadas).
[0136] A parte inteira do parâmetro de atraso de pitch de LTPF pode ser dada por ltpf_pitch_int = argmax R12,8 (k) k=k′′ ′′ min …kmax com 127 R12,8 (k) = ∑ x12,8 (n)x12,8 (n − k) n=0 e k ′′ ′′ min = max (32, 2Tatual − 4), k max = min (228, 2Tatual + 4).
[0137] A parte fracionária do atraso de LTPF pode então ser dada por 0 ifpitch_int ≥ 157 argmax interp(R12.8 ,pitch_int, d) if157 > pitch_int ≥ 127 d=−2,0,2 pitch_fr = argmax interp(R ,pitch_int, d) if127 > pitch_int>32
12.8 d=−3…3 argmax interp(R12.8 ,pitch_int, d) ifpitch_int = 32 { d=0…3 com 4 interp(R, T, d) = ∑ R(T + k)h4 (4k − d) k=−4 e h4 é a resposta ao impulso de um filtro passa-baixa FIR fornecido por tab_ltpf_interp_R(n + 15) , se − 16 < 𝑛 < 16 h4 (n) = { 0 , ao contrário tab_ltpf_interp_R pode ser, por exemplo: double tab_ltpf_interp_R[31] = { -2,874561161519444e-03, -3,001251025861499e-03, +2,745471654059321e-03 +1,535727698935322e-02, +2,868234046665657e-02, +2,950385026557377e-02 +4,598334491135473e-03, -4,729632459043440e-02, -1,058359163062837e-01 -1,303050213607112e-01, -7,544046357555201e-02, +8,357885725250529e-02 +3,301825710764459e-01, +6,032970076366158e-01, +8,174886856243178e-01 +8,986382851273982e-01, +8,174886856243178e-01, +6,032970076366158e-01 +3,301825710764459e-01, +8,357885725250529e-02, -7,544046357555201e-02 -1,303050213607112e-01, -1,058359163062837e-01, -4,729632459043440e-02 +4,598334491135473e-03, +2,950385026557377e-02, +2,868234046665657e-02 +1,535727698935322e-02, +2,745471654059321e-03, -3,001251025861499e-03 -2,874561161519444e-03};
[0138] Se pitch_fr < 0, então, tanto pitch_int quanto pitch_fr são modificados de acordo com pitch_int = pitch_int − 1 pitch_fr = pitch_fr + 4
[0139] Finalmente, o índice do parâmetro de atraso do pitch é dado por pitch_int + 283 ifpitch_int ≥ 157 pitch_fr pitch_index = {2pitch_int + + 126 if157 > pitch_int ≥ 127 2 4pitch_int + pitch_fr − 128 if127 > pitch_int
7.2.6 BIT DE ATIVAÇÃO DE LTPF
[0140] Uma correlação normalizada é computada primeiro da seguinte maneira ∑127 𝑛=0 𝑥𝑖 (𝑛, 0)𝑥𝑖 (𝑛 − pitch_int,pitch_fr) 𝑛𝑐 = √∑127 127 𝑛=0 𝑥𝑖 (𝑛, 0) ∑𝑛=0 𝑥𝑖 (𝑛 − pitch_int,pitch_fr) 2 2 com 2 𝑥𝑖 (𝑛, 𝑑) = ∑ 𝑥12,8 (𝑛 + 𝑘)ℎ𝑖 (4𝑘 − 𝑑) 𝑘=−2 e ℎ𝑖 é a resposta ao impulso de um filtro passa-baixa FIR fornecido por tab_ltpf_interp_x12k8(𝑛 + 7) , 𝑠𝑒 − 8 < 𝑛 < 8 ℎ𝑖 (𝑛) = { 0 , ao contrário com tab_ltpf_interp_x12k8 é fornecido por: double tab_ltpf_interp_x12k8[15] = { +6,698858366939680e-03, +3,967114782344967e-02, +1,069991860896389e-01 +2,098804630681809e-01, +3,356906254147840e-01, +4,592209296082350e-01 +5,500750019177116e-01, +5,835275754221211e-01, +5,500750019177116e-01 +4,592209296082350e-01, +3,356906254147840e-01, +2,098804630681809e-01 +1,069991860896389e-01, +3,967114782344967e-02, +6,698858366939680e-03};
[0141] O bit de ativação de LTPF, em seguida, é definido de acordo com: if ( (mem_ltpf_active==0 && mem_nc>0,94 && nc>0,94) || (mem_ltpf_active==1 && nc>0,9) || (mem_ltpf_active==1 && abs(pitch-mem_pitch)<2 && (nc-mem_nc)>-0.1 && nc>0.84) ) { ltpf_active = 1;
} else { ltpf_active = 0; } com mem_ltpf_active é o valor de ltpf_active no quadro anterior (é 0, se pitch_present = 0 no quadro anterior), mem_nc é o valor de nc no quadro anterior (é 0 se pitch_present = 0 no quadro anterior), pitch = pitch_int + pitch_fr / 4 e mem_pitch é o valor do pitch no quadro anterior (é 0 se pitch_present = 0 no quadro anterior).
7.3 LTPF NO DECODIFICADOR
[0142] O sinal decodificado no domínio da frequência (FD), por exemplo, após a síntese de MDCT (Transformação discreta modificada de cosseno), a síntese MDST (Transformação discreta modificada de seno), ou uma síntese baseada em outra transformação, pode ser pós-filtrada no domínio do tempo com uso de um Filtro IIR, cujos parâmetros podem depender dos dados do fluxo de bits LTPF "pitch_index" e "ltpf_active". Para evitar descontinuidade, quando os parâmetros mudam de um quadro para o próximo, um mecanismo de transição pode ser aplicado no primeiro trimestre do quadro atual.
[0143] Em exemplos, um filtro LTPF IIR pode ser implantado com uso de Lnum Lden Lden ltpf (n) = x x̂ ̂ (n) − ∑ cnum (k)x̂(n − k) + ∑ cden (k, pfr )x̂ ltpf (n − pint + − k) 2 k=0 k=0 em que x̂(n) é o sinal de entrada do filtro (isto é, o sinal decodificado após ltpf (n) é o sinal de saída do filtro. a síntese MDCT) e x̂
[0144] A parte inteira pint e a parte fracionária pfr do atraso de pitch LTPF podem ser calculadas da seguinte maneira. Primeiro, o atraso de pitch em 12,8kHz é recuperado com uso de pitch_index − 283 ifpitch_index ≥ 440 pitch_index ⌊ ⌋ − 63 if440 > pitch_index ≥ 380 pitch_int = 2 pitch_index ⌊ ⌋ + 32 if380 > pitch_index { 4
0 ifpitch_index ≥ 440 pitch_fr = {2 ∗ pitch_index − 4 ∗ pitch_int + 508 if440 > pitch_index ≥ 380 pitch_index − 4 ∗ pitch_int + 128 if380 > pitch_index pitch_fr pitch = pitch_int + 4
[0145] O atraso do pitch pode, então, ser escalonado para a taxa de amostragem de saída fs e convertido em partes inteiras e fracionárias com uso de fs pitchfs = pitch ∗ 12800 pup = nint (pitchfs ∗ 4) pup pint = ⌊ ⌋ 4 pfr = pup − 4 ∗ pint em que fs é a taxa de amostragem.
[0146] Os coeficientes de filtro cnum (k) e cden (k, pfr ) podem ser computados comoa seguir cnum (k) = 0,85 ∗ gain_ltpf ∗ tab_ltpf_num_fs[gain_ind][k]for k = 0. . Lnum cden (k, pfr ) = ganholtpf ∗ tab_ltpf_den_fs[pfr ][k]para k = 0. . Lden com fs Lden = max (4, ) 4000 Lnum = Lden − 2 e gain_ltpf e gain_ind podem ser obtidos de acordo com fs_idx = min(4,(𝑓𝑠 /8000-1)); if (nbits < 320 + fs_idx*80) { gain_ltpf = 0.4; gain_ind = 0; } else if (nbits < 400 + fs_idx*80) { gain_ltpf = 0.35; gain_ind = 1; }
else if (nbits < 480 + fs_idx*80) { gain_ltpf = 0.3; gain_ind = 2; } else if (nbits < 560 + fs_idx*80) { gain_ltpf = 0.25; gain_ind = 3; } else { gain_ltpf = 0; } e as tabelas tab_ltpf_num_fs[gain_ind][k] e tab_ltpf_den_fs[pfr ][k] são predeterminados.
[0147] Os exemplos de tab_ltpf_num_fs[gain_ind][k] são fornecidos no presente documento (ao contrário de “fs”, a taxa de amostragem é indicada): double tab_ltpf_num_8000[4][3] = { {6,023618207009578e-01,4,197609261363617e-01,-1,883424527883687e-02}, {5,994768582584314e-01,4,197609261363620e-01,-1,594928283631041e-02}, {5,967764663733787e-01,4,197609261363617e-01,-1,324889095125780e-02}, {5,942410120098895e-01,4,197609261363618e-01,-1,071343658776831e-02}}; double tab_ltpf_num_16000[4][3] = { {6,023618207009578e-01,4,197609261363617e-01,-1,883424527883687e-02}, {5,994768582584314e-01,4,197609261363620e-01,-1,594928283631041e-02}, {5,967764663733787e-01,4,197609261363617e-01,-1,324889095125780e-02}, {5,942410120098895e-01,4,197609261363618e-01,-1,071343658776831e-02}}; double tab_ltpf_num_24000[4][5] = {
{3,989695588963494e-01,5,142508607708275e-01,1,004382966157454e-01,- 1,278893956818042e-02,-1,572280075461383e-03}, {3,948634911286333e-01,5,123819208048688e-01,1,043194926386267e-01,- 1,091999960222166e-02,-1,347408330627317e-03}, {3,909844475885914e-01,5,106053522688359e-01,1,079832524685944e-01,- 9,143431066188848e-03,-1,132124620551895e-03}, {3,873093888199928e-01,5,089122083363975e-01,1,114517380217371e-01,- 7,450287133750717e-03,-9,255514050963111e-04}}; double tab_ltpf_num_32000[4][7] = { {2,982379446702096e-01,4,652809203721290e-01,2,105997428614279e- 01,3,766780380806063e-02,-1,015696155796564e-02,-2,535880996101096e-03,- 3,182946168719958e-04}, {2,943834154510240e-01,4,619294002718798e-01,2,129465770091844e- 01,4,066175002688857e-02,-8,693272297010050e-03,-2,178307114679820e-03,- 2,742888063983188e-04}, {2,907439213122688e-01,4,587461910960279e-01,2,151456974108970e- 01,4,350104772529774e-02,-7,295495347716925e-03,-1,834395637237086e-03,- 2,316920186482416e-04}, {2,872975852589158e-01,4,557148886861379e-01,2,172126950911401e- 01,4,620088878229615e-02,-5,957463802125952e-03,-1,502934284345198e-03,- 1,903851911308866e-04}}; double tab_ltpf_num_48000[4][11] = { {1,981363739883217e-01,3,524494903964904e-01,2,513695269649414e- 01,1,424146237314458e-01,5,704731023952599e-02,9,293366241586384e-03,- 7,226025368953745e-03,-3,172679890356356e-03,-1,121835963567014e-03,- 2,902957238400140e-04,-4,270815593769240e-05}, {1,950709426598375e-01,3,484660408341632e-01,2,509988459466574e- 01,1,441167412482088e-01,5,928947317677285e-02,1,108923827452231e-02,- 6,192908108653504e-03,-2,726705509251737e-03,-9,667125826217151e-04,-
2,508100923165204e-04,-3,699938766131869e-05}, {1,921810055196015e-01,3,446945561091513e-01,2,506220094626024e- 01,1,457102447664837e-01,6,141132133664525e-02,1,279941396562798e-02,- 5,203721087886321e-03,-2,297324511109085e-03,-8,165608133217555e-04,- 2,123855748277408e-04,-3,141271330981649e-05}, {1,894485314175868e-01,3,411139251108252e-01,2,502406876894361e- 01,1,472065631098081e-01,6,342477229539051e-02,1,443203434150312e-02,- 4,254449144657098e-03,-1,883081472613493e-03,-6,709619060722140e-04,- 1,749363341966872e-04,-2,593864735284285e-05}};
[0148] Os exemplos de tab_ltpf_den_fs[pfr ][k]são fornecidos no presente documento (ao contrário de “fs”, a taxa de amostragem é indicada): double_tab_ltpf_den_8000[4][5] = { {0,000000000000000e+00, 2,098804630681809e-01, 5,835275754221211e-01, 2,098804630681809e-01, 0,000000000000000e+00}, {0,000000000000000e+00, 1,069991860896389e-01, 5,500750019177116e-01, 3,356906254147840e-01, 6,698858366939680e-03}, {0,000000000000000e+00, 3,967114782344967e-02, 4,592209296082350e-01, 4,592209296082350e-01, 3,967114782344967e-02}, {0,000000000000000e+00, 6,698858366939680e-03, 3,356906254147840e-01, 5,500750019177116e-01, 1,069991860896389e-01}}; double_tab_ltpf_den_16000[4][5] = { {0,000000000000000e+00, 2,098804630681809e-01, 5,835275754221211e-01, 2,098804630681809e-01, 0,000000000000000e+00}, {0,000000000000000e+00, 1,069991860896389e-01, 5,500750019177116e-01, 3,356906254147840e-01, 6,698858366939680e-03}, {0,000000000000000e+00, 3,967114782344967e-02, 4,592209296082350e-01, 4,592209296082350e-01, 3,967114782344967e-02}, {0,000000000000000e+00, 6,698858366939680e-03, 3,356906254147840e-01, 5,500750019177116e-01, 1,069991860896389e-01}};
double_tab_ltpf_den_24000[4][7] = { {0,000000000000000e+00, 6,322231627323796e-02, 2,507309606013235e-01, 3,713909428901578e-01, 2,507309606013235e-01, 6,322231627323796e-02, 0,000000000000000e+00}, {0,000000000000000e+00, 3,459272174099855e-02, 1,986515602645028e-01, 3,626411726581452e-01, 2,986750548992179e-01, 1,013092873505928e-01, 4,263543712369752e-03}, {0,000000000000000e+00, 1,535746784963907e-02, 1,474344878058222e-01, 3,374259553990717e-01, 3,374259553990717e-01, 1,474344878058222e-01, 1,535746784963907e-02}, {0,000000000000000e+00, 4,263543712369752e-03, 1,013092873505928e-01, 2,986750548992179e-01, 3,626411726581452e-01, 1,986515602645028e-01, 3,459272174099855e-02}}; double_tab_ltpf_den_32000[4][9] = { {0,000000000000000e+00, 2,900401878228730e-02, 1,129857420560927e-01, 2,212024028097570e-01, 2,723909472446145e-01, 2,212024028097570e-01, 1,129857420560927e-01, 2.900401878228730e-02, 0,000000000000000e+00}, {0,000000000000000e+00, 1,703153418385261e-02, 8,722503785537784e-02, 1,961407762232199e-01, 2,689237982237257e-01, 2,424999102756389e-01, 1,405773364650031e-01, 4,474877169485788e-02, 3,127030243100724e-03}, {0,000000000000000e+00, 8,563673748488349e-03, 6,426222944493845e-02, 1,687676705918012e-01, 2,587445937795505e-01, 2,587445937795505e-01, 1,687676705918012e-01, 6,426222944493845e-02, 8,563673748488349e-03}, {0,000000000000000e+00, 3,127030243100724e-03, 4,474877169485788e-02, 1,405773364650031e-01, 2,424999102756389e-01, 2,689237982237257e-01, 1,961407762232199e-01, 8,722503785537784e-02, 1,703153418385261e-02}}; double_tab_ltpf_den_48000[4][13] = { {0,000000000000000e+00, 1,082359386659387e-02, 3,608969221303979e-02, 7,676401468099964e-02, 1,241530577501703e-01, 1,627596438300696e-01,
1,776771417779109e-01, 1,627596438300696e-01, 1,241530577501703e-01, 7,676401468099964e-02, 3,608969221303979e-02, 1,082359386659387e-02, 0,000000000000000e+00}, {0,000000000000000e+00, 7,041404930459358e-03, 2,819702319820420e-02, 6,547044935127551e-02, 1,124647986743299e-01, 1,548418956489015e-01, 1,767122381341857e-01, 1,691507213057663e-01, 1,352901577989766e-01, 8,851425011427483e-02, 4,499353848562444e-02, 1,557613714732002e-02, 2,039721956502016e-03}, {0,000000000000000e+00, 4,146998467444788e-03, 2,135757310741917e-02, 5,482735584552816e-02, 1,004971444643720e-01, 1,456060342830002e-01, 1,738439838565869e-01, 1,738439838565869e-01, 1,456060342830002e-01, 1,004971444643720e-01, 5,482735584552816e-02, 2,135757310741917e-02, 4,146998467444788e-03}, {0,000000000000000e+00, 2,039721956502016e-03, 1,557613714732002e-02, 4,499353848562444e-02, 8,851425011427483e-02, 1,352901577989766e-01, 1,691507213057663e-01, 1,767122381341857e-01, 1,548418956489015e-01, 1,124647986743299e-01, 6,547044935127551e-02, 2,819702319820420e-02, 7,041404930459358e-03}}
[0149] Em referência ao tratamento de transição, cinco casos diferentes são considerados.
[0150] Primeiro caso: ltpf_active = 0 e mem_ltpf_active = 0
NF x̂ltpf (n) = x ̂ (n)para n = 0. . 4
[0151] Segundo caso: ltpf_active = 1 e mem_ ltpf_active = 0 Lnum Lden n Lden ltpf (n) = x x̂ ̂ (n) −
NF [ ∑ cnum (k)x̂(n − k) + ∑ cden (k, pfr )x̂ ltpf (n − pint + − k)] 2 4 k=0 k=0
NF para n = 0. . 4
[0152] Terceiro caso: ltpf_active = 0 e mem_ ltpf_active = 1
Lnum Lden n Lden ltpf (n) = x x̂ ̂ (n) − (1 − mem (k)x(n ) [ ∑ cnum ̂ − k) + ∑ cden mem (k, pmem fr )x̂ ltpf (n − pmem int + − k)] NF 2 4 k=0 k=0
NF para n = 0. . 4 mem com cnum mem , cden , pmem int e pmem fr são os parâmetros de filtro calculados no quadro anterior.
[0153] Quarto caso: ltpf_active = 1 e mem_ltpf_active = 1 e pint = pmem int e pfr = pmem fr Lnum Lden Lden (n) (n) (k)x(n cden (k, pfr )x̂ ltpf (n − p int + − k) x̂ ltpf = x̂ − ∑ cnum ̂ − k) + ∑ 2 k=0 k=0
NF para n = 0. . 4
[0154] Quinto caso: ltpf_active = 1 e mem_ltpf_active = 1 e (pint ≠ pmem int ou pfr ≠ pmem fr ) Lnum Lden ′ n ′ Lden ltpf (n) = x x̂ ̂ (n) − (1 − mem (k)x(n ) [ ∑ cnum ̂ − k) + ∑ cden mem (k, pmem fr )x̂ ltpf (n − pmem int + − k)] NF 2 4 k=0 k=0
NF para n = 0. . 4 Lnum Lden ′ n ′ Lden ltpf (n) = x̂ x̂ ltpf (n) − N [ ∑ cnum (k)x̂ ltpf (n − k) + ∑ cden (k, pfr )x̂ ltpf (n − pint + − k)] F 2 4 k=0 k=0
NF para n = 0. . 4 sendo que Nf é o número de amostras em um quadro.
7.4 VANTAGENS ADICIONAIS
[0155] Como pode ser entendido, a solução, de acordo com os exemplos acima, é transparente para o decodificador. Não há necessidade de sinalizar para o decodificador, por exemplo, que a primeira estimativa ou a segunda estimativa foi selecionada.
[0156] Por conseguinte, não há aumento da carga útil no fluxo de bits 63.
[0157] Além disso, não há necessidade de modificar os decodificadores para se adaptar ao novo processado realizado no codificador. O decodificador não precisa saber que a presente invenção foi implantada. Por isso, a invenção permite aumentar a compatibilidade com os sistemas legados.
8. OCULTAÇÃO POR PERDA DE PACOTES
[0158] O atraso do pitch Tmelhor (19), obtido pelo aparelho 10, 60a ou 110 acima, pode ser usado no decodificador (por exemplo, 60b) para implantar uma ocultação de perda de pacote (PLC) (também conhecida como ocultação de erro). O PCL é usado em codecs de áudio para ocultar pacotes perdidos ou corrompidos durante a transmissão do codificador para o decodificador. Na técnica anterior, o PLC pode ser realizado no lado do decodificador e extrapolar o sinal decodificado no domínio de transformação ou no domínio do tempo.
[0159] O atraso do pitch pode ser o principal parâmetro usado no PLC baseado em pitch. Esse parâmetro pode ser estimado no lado do codificador e codificado no fluxo de bits. Nesse caso, o atraso de pitch dos últimos quadros bons é usado para ocultar o quadro perdido atual.
[0160] Um quadro corrompido não fornece uma saída audível correta, e deve ser descartado.
[0161] Para cada quadro decodificado no decodificador, sua validade pode ser verificada. Por exemplo, cada quadro pode ter um campo carregando um código de redundância cíclica (CRC) que é verificado realizando-se as operações predeterminadas fornecidas por um algoritmo predeterminado. O procedimento pode ser repetido para verificar se o resultado calculado corresponde ao valor no campo CRC. Se um quadro não foi decodificado adequadamente (por exemplo, em vista da interferência na transmissão), supõe-se que alguns erros tenham afetado o quadro. Por isso, se a verificação fornecer um resultado de decodificação incorreto, o quadro será mantido decodificado incorretamente (inválido, corrompido).
[0162] Quando um quadro é reconhecido como decodificado incorretamente, uma estratégia de ocultação pode ser usada para fornecer uma saída audível: caso contrário, algo como um furo audível irritante pode ser ouvido. Por isso, é necessário encontrar algum tipo de quadro que "preencha a lacuna" mantida aberta pela estrutura decodificada incorretamente. O propósito do procedimento de ocultação de perda de quadro é ocultar o efeito de qualquer quadro indisponível ou corrompido para decodificação.
8.1 ESTRATÉGIAS DE OCULTAÇÃO
[0163] Um procedimento de ocultação de perda de quadro pode compreender métodos de ocultação para os vários tipos de sinal. O melhor desempenho possível do codec em situações propensas a erros com perdas de quadros pode ser obtido através da seleção do método mais adequado. Um dos métodos de ocultação de perda de pacote pode ser, por exemplo, ocultação no domínio de tempo do TCX.
8.2 OCULTAÇÃO NO DOMÍNIO DO TEMPO TCX
[0164] O método de ocultação no domínio do tempo do TCX é uma técnica de PLC baseada em pitch que opera no domínio do tempo. É mais adequado para sinais com uma estrutura harmônica dominante. Um exemplo do procedimento é o seguinte: o sinal sintetizado dos últimos quadros decodificados é filtrado inversamente com o filtro LP, conforme descrito na Seção 8.2.1, para obter o sinal periódico, conforme descrito na Seção 8.2.2. O sinal aleatório é gerado por um gerador aleatório com distribuição aproximadamente uniforme na Seção 8.2.3. Os dois sinais de excitação são somados para formar o sinal total de excitação, conforme descrito na Seção 8.2.4, que se desvanece de forma adaptativa com o fator de atenuação descrito na Seção 8.2.6 e, finalmente, filtrado com o filtro LP para obter o sinal de tempo oculto sintetizado. Se a LTPF tiver sido usada no último quadro válido, a LTPF também poderá ser aplicada no sinal de tempo oculto sintetizado, conforme descrito na Seção 8.3. Para obter uma sobreposição adequada com o primeiro quadro bom após um quadro perdido, o sinal de cancelamento do alias do domínio do tempo é gerado na Seção 8.2.5.
8.2.1 CÁLCULO DE PARÂMETRO DE LPC
[0165] O método de ocultação no domínio do tempo do TCX está operando no domínio da excitação. Uma função de autocorrelação pode ser calculada em 80 bandas equidistantes no domínio da frequência. A energia é pré-enfatizada com o fator fixo de pré-ênfase 𝜇 𝑓𝑠 𝜇
8000 0,62 16000 0,72 24000 0,82 32000 0,92 48000 0,92
[0166] A função de autocorrelação é defasada na janela com uso da seguinte janela 1 120πi 2 wlag (i) = exp [− ( ) ] , para i = 1 … 16 2 fs antes de ser transformado no domínio do tempo com uso de um DFT inverso e empilhado de maneira uniforme. Finalmente, uma operação de Levinson Durbin pode ser usada para obter o filtro LP ac (k), para o quadro oculto. Um exemplo é fornecido abaixo: 𝑒 = 𝑅𝐿 (0) 𝑎0 (0) = 1 para 𝑘 = 1 to 𝑁𝐿 do − ∑𝑘−1 𝑛=0 𝑎 𝑘−1 (𝑛)𝑅 (𝑘 𝐿 − 𝑛) 𝑟𝑐 = 𝑒 𝑎𝑘 (0) = 1 para 𝑛 = 1 a 𝑘 − 1 fazer 𝑎𝑘 (𝑛) = 𝑎𝑘−1 (𝑛) + 𝑟𝑐. 𝑎𝑘−1 (𝑘 − 𝑛) 𝑎𝑘 (𝑘) = 𝑟𝑐 𝑒 = (1 − 𝑟𝑐 2 )𝑒
[0167] O filtro LP pode ser calculado apenas no primeiro quadro perdido após um bom quadro e permanece em quadros perdidos posteriormente.
8.2.2 CONSTRUÇÃO DA PARTE PERIÓDICA DA EXCITAÇÃO
N
[0168] As últimas NL + Tc + 2 amostras de tempo decodificadas são, primeiro, pré- enfatizadas com o fator de pré-ênfase da Seção 8.2.1, com uso do filtro Hpré−enf (z) = 1 − μz −1 para obter o sinal xpre (k), em que Tc é o valor do atraso do pitch pitch_int ou pitch_int + 1 sepitch_fr > 0. Os valores pitch_int e pitch_fr são os valores de atraso do pitch transmitidos no fluxo de bits.
[0169] O sinal pré-enfatizado, xpre (k) é adicionalmente filtrado com o filtro LP inverso calculado para obter o sinal de excitação anterior excp′ (k). Para construir o sinal de excitação, excp (k), para o quadro perdido atual, excp′ (k) é repetidamente copiado com Tc da seguinte maneira excp (k) = excp′ (E − Tc + k), for k = 0 … N − 1 em que E corresponde à última amostra em excp′ (k). Se o fator de estabilidade θ for menor que 1, o primeiro ciclo de pitch de excp′ (k) é o primeiro passa- baixa filtrado com um filtro FIR (resposta finita ao impulso) de 11 derivações descrito na tabela abaixo 𝑓𝑠 𝐶𝑜𝑒𝑓𝑖𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑑𝑒 𝑓𝑖𝑙𝑡𝑟𝑜 𝐹𝐼𝑅 𝑝𝑎𝑠𝑠𝑎 − 𝑏𝑎𝑖𝑥𝑜 8000 a {0,0053, 0,0000, -0,0440, 0,0000, 0,2637, 0,5500, 0,2637, 0,0000, - 16000 0,0440, 0,0000, 0,0053} 24000 a {-0,0053, -0,0037, -0,0140, 0,0180, 0,2668, 0,4991, 0,2668, 0,0180, - 48000 0,0140, -0,0037, -0,0053}
[0170] O ganho de pitch, g ′p , pode ser calculado da seguinte forma ∑N/2 xpre (NL + k) ∙ xpre (NL + Tc + k) g p = k=0 ′ ∑N/3 k=0 xpre (NL + k)2
[0171] Se pitch_fr = 0 então g p = g ′p . Caso contrário, um segundo ganho de pitch, g ′′ p , pode ser calculado da seguinte forma ∑N/2 xpre (NL + 1 + k) ∙ xpre (NL + Tc + k) g p = k=0 ′′ ∑N/3 k=0 xpre (NL + 1 + k)2 e g p = max (g ′p , g ′′ ′′ ′ p ). Se g p > g p então Tc é reduzido a um para processamento adicional.
[0172] Finalmente, g p é ligado por 0 ≤ g p ≤ 1.
[0173] A excitação periódica formada, excp (k), é atenuada amostra por amostra, em todo o quadro, começando com um e terminando com um fator de atenuação α, para obter exc ̂(k). p O ganho de pitch é calculado apenas no primeiro quadro perdido após um bom quadro e é definido para α para perdas adicionais consecutivas de quadro.
8.2.3 CONSTRUÇÃO DA PARTE ALEATÓRIA DA EXCITAÇÃO
[0174] A parte aleatória da excitação pode ser gerada com um gerador aleatório, com distribuição aproximadamente uniforme da seguinte forma excn,FB (k) = extrato(excn,FB (k − 1) ∙ 12821 + 16831), para k = 0 … N − 1 em que excn,FB (−1) é inicializado com 24607 para o primeiro quadro oculto com esse método e extrato() extrai os 16 LSB do valor. Para quadros adicionais, excn,FB (N − 1) é armazenado e usado como a seguir excn,FB (−1).
[0175] Para mudar o ruído para frequências mais altas, o sinal de excitação é filtrado com passa-alta com um filtro FIR de fase linear de 11 derivações descrito na tabela abaixo para obter excn,HP (k).
𝑓𝑠 𝐶𝑜𝑒𝑓𝑖𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑑𝑒 𝑓𝑖𝑙𝑡𝑟𝑜 𝐹𝐼𝑅 𝑝𝑎𝑠𝑠𝑎 − 𝑎𝑙𝑡𝑜 8000 a {0, -0,0205, -0,0651, -0,1256, -0,1792, 0,8028, -0,1792, -0,1256, - 16000 0,0651, -0,0205, 0} 24000 a {-0,0517, -0,0587, -0,0820, -0,1024, -0,1164, 0,8786, -0,1164, -0,1024, 48000 -0,0820, -0,0587, -0,0517}
[0176] Para garantir que o ruído se desvaneça até o ruído da banda completa com a velocidade de desvanecimento dependente do fator de atenuação α, a parte aleatória da excitação, excn (k), é composta por uma interpolação linear entre a banda completa, excn,FB (k), e a versão filtrada passa-alta, excn,HP (k), como excn (k) = (1 − β) ∙ excn,FB (k) + β ∙ excn,HP (k), para k = 0 … N − 1 em que β = 1 para o primeiro quadro perdido após um bom quadro e β = β−1 ∙ α para a segunda perda de quadro e perdas adicionais consecutivas, em que β−1 é β do quadro oculto anterior.
[0177] Para ajustar o nível de ruído, o ganho de ruído,g ′n , é calculado como 2 ∑N/2−1 ′ (E − N/2 + 1 + k) − g ∙ exc ′ (E − N/2 + 1 − T + k)) k=0 (excp p p c g ′n = √ N/2
[0178] Se Tc = pitch_int após a Seção 8.2.2, então g n = g ′n . Caso contrário, um segundo ganho de ruído,g ′′ n , é calculado como na equação acima, mas em que Tc é pitch_int. A seguir, g n = min (g ′n , g ′′ n ).
[0179] Para processamento adicional, g n , primeiro, é normalizado e depois multiplicado por (1,1 − 0,75g p ) para obter ĝ. n
[0180] A excitação aleatória formada, excn (k), é atenuada uniformemente com ĝ, n desde a primeira amostra até a amostra cinco, e seguindo amostra por amostra em todo o quadro, começando com ĝn e terminando com ĝn ∙ α para obter exc ̂(k). n O ganho de ruído,g n , é calculado apenas no primeiro quadro perdido após um bom quadro e é definido para g n ∙ α mais perdas adicionais consecutivas de quadro.
8.2.4 CONSTRUÇÃO DA EXCITAÇÃO TOTAL, SÍNTESE E PÓS-
PROCESSAMENTO
[0181] ̂(k), A excitação aleatória,excn ̂(k), é adicionada à excitação periódica,excp para formar o sinal total de excitação exct (k). O sinal final sintetizado para o quadro oculto é obtido filtrando-se a excitação total com o filtro LP da Seção 8.2,1 e pós- processado com o filtro sem ênfase.
8.2.5 CANCELAMENTO DO ALIAS DO DOMÍNIO DE TEMPO
[0182] Para obter uma adição de sobreposição adequada, caso o próximo quadro seja um bom quadro, a parte de cancelamento do alias do domínio do tempo, xTDAC (k), pode ser gerada. Para isso, N − Z amostras adicionais são criadas da mesma forma descrita acima para obter o sinal x(k) for k = 0 … 2N − Z. Nesse caso, a parte de cancelamento do alias do domínio de tempo é criada pelas seguintes etapas:
[0183] Zero preenchimento do armazenamento temporário sintetizado no domínio do tempo x(k) 0, 0 ≤ 𝑘 < 𝑍 x̂(k) = { x(k − Z), 𝑍 ≤ 𝑘 < 2𝑁
[0184] Criar janela x̂(k) com a janela MDCT wN (k) w (k) = wN (k) ∙ x x̂ ̂ (k), 0 ≤ 𝑘 < 2𝑁
[0185] Remodelar de 2N até N 3N 3N N −x̂w( w( + k) − x̂ − 1 − k) , 0 ≤ 𝑘 < y(k) = { 2 2 2 N 3N N w (− + k) − x x̂ w( ̂ − 1 − k) , ≤ k < 𝑁 2 2 2
[0186] Remodelar de N até 2N
N N y ( + k) , 0 ≤ 𝑘 < 2 2 3N N −y ( − 1 − k) , ≤ k < 𝑁 ŷ(k) = 2 2 3N 3N −y ( − 1 − k) , 𝑁 ≤ 𝑘 < 2 2 3N 3N { −y (− 2 + k) , 2 ≤ k < 2𝑁
[0187] Criar janela ŷ(k) com a janela MDCT invertida (Transformação discreta de cosseno modificado) (ou MDST, Transformação discreta de seno modificado, em outros exemplos) wN (k) xTDAC (k) = wN (2N − 1 − k) ∙ ŷ(k), 0 ≤ 𝑘 < 2𝑁
8.2.6 TRATAMENTO DE MÚLTIPLAS PERDAS DE QUADROS
[0188] O sinal construído se esvanece até zero. A velocidade de desvanecimento é controlada por um fator de atenuação, α, que depende do fator de atenuação anterior, α−1 , o ganho de pitch, g p , calculado no último quadro recebido corretamente, no número de quadros apagados consecutivos, nbLostCmpt, e na estabilidade, θ. O procedimento a seguir pode ser usado para calcular o fator de atenuação, α if (𝑛𝑏𝐿𝑜𝑠𝑡𝐶𝑚𝑝𝑡 == 1) 𝛼 = √𝑔𝑝 if (𝛼 > 0.98) 𝛼 = 0.98 else if (𝛼 < 0.925)
𝛼 = 0.925 else if (𝑛𝑏𝐿𝑜𝑠𝑡𝐶𝑚𝑝𝑡 == 2) 𝛼 = (0.63 + 0.35 𝜃)∙ 𝛼−1 if 𝛼 < 0.919 𝛼 = 0.919; else if (𝑛𝑏𝐿𝑜𝑠𝑡𝐶𝑚𝑝𝑡 == 3) 𝛼 = (0.652 + 0.328 𝜃) ∙ 𝛼−1 else if (𝑛𝑏𝐿𝑜𝑠𝑡𝐶𝑚𝑝𝑡 == 4) 𝛼 = (0.674 + 0.3 𝜃) ∙ 𝛼−1 else if (𝑛𝑏𝐿𝑜𝑠𝑡𝐶𝑚𝑝𝑡 == 5) { 𝛼 = (0.696 + 0.266 𝜃) ∙ 𝛼−1 else 𝛼 = (0.725 + 0.225 𝜃) ∙ 𝛼−1 𝑔𝑝 = 𝛼
[0189] O fator θ (estabilidade dos dois últimos vetores adjacentes do fator de escala 𝑠𝑐𝑓−2 (𝑘) e 𝑠𝑐𝑓−1 (𝑘)) pode ser obtido, por exemplo, como: 15 1 2 𝜃 = 1,25 − ∑(𝑠𝑐𝑓−1 (𝑘) − 𝑠𝑐𝑓−2 (𝑘)) 25 𝑘=0 em que 𝑠𝑐𝑓−2 (𝑘) e 𝑠𝑐𝑓−1 (𝑘) são os vetores do fator de escala dos dois últimos quadros adjacentes. O fator 𝜃 é delimitado por 0 ≤ 𝜃 ≤ 1, com valores maiores de 𝜃 correspondentes a sinais mais estáveis. Isso limita as flutuações de energia e envelope espectral. Se não houver dois vetores de fator de escala adjacentes presentes, o fator 𝜃 será definido como 0,8.
[0190] Para evitar um aumento rápido de alta energia, o espectro é filtrado com passa-baixa com 𝑋𝑠 (0) = 𝑋𝑠 (0) ∙ 0,2 e 𝑋𝑠 (1) = 𝑋𝑠 (1) ∙ 0,5.
9. LTPF E PLC COM AS MESMAS INFORMAÇÕES DE ATRASO DE
PITCH
[0191] A Figura 9 mostra um exemplo geral de um método 100', que pode ser usado para operar o decodificador 60b. Na etapa S101', uma versão codificada de um sinal pode ser decodificada. Em exemplos, o quadro pode ser recebido (por exemplo, através de uma conexão Bluetooth) e/ou obtido de uma unidade de armazenamento. O atraso de pitch Tmelhor (selecionado entre T1 e T2, como discutido acima) pode ser usado para PLC e LTPF.
[0192] Na etapa S102', a validade do quadro é verificada (por exemplo, com CRC, paridade etc.). Se a invalidez do quadro for reconhecida, a ocultação é realizada (consultar abaixo).
[0193] Caso contrário, se o quadro for mantido válido, na etapa S103', será verificado se as informações de pitch estão codificadas no quadro. Em alguns exemplos, as informações de pitch são codificadas apenas se a harmonicidade tiver sido reconhecida como estando acima de um determinado limiar (o que pode indicar, por exemplo, harmonicidade suficientemente alta para realizar LTPF e/ou PLC, por exemplo).
[0194] Se em S103' for reconhecido que as informações de pitch estão realmente codificadas, as informações de pitch são decodificadas e armazenadas na etapa S104'. Caso contrário, o ciclo termina e um novo quadro pode ser decodificado em S101'.
[0195] Posteriormente, na etapa S105', é verificado se a LTPF está ativada. Se for verificado que a LTPF está ativada, a LTPF é executada na etapa S106. Caso contrário, a LTPF é ignorada; o ciclo termina; e um novo quadro pode ser decodificado em S101'.
[0196] Em referência à ocultação, esta pode ser subdividida em etapas. Na etapa S107', é verificado se as informações de pitch do quadro anterior (ou informações de pitch de um dos quadros anteriores) são armazenadas na memória (isto é, estão à disposição).
[0197] Se for verificado que as informações de pitch buscadas estão armazenadas, então, a ocultação de erros pode ser realizada na etapa S108. A repetição da resolução de quadro MDCT (ou MDST) com embaralhamento do sinal e/ou ocultação no domínio do tempo TCX e/ou ECU de fase pode ser realizada.
[0198] Caso contrário, se em S107' for verificado que não são armazenadas informações de pitch recente (como conseqüência de o decodificador não ter transmitido o atraso de pitch, por exemplo) uma técnica de ocultação diferente, conhecida por si mesma, e que não implica o uso de informações de pitch fornecidas pelo codificador, pode ser usada na etapa S109'. Algumas dessas técnicas podem ser baseadas na estimativa das informações de pitch e/ou outras informações de harmonicidade no decodificador. Em alguns exemplos, nenhuma técnica de ocultação pode ser realizada neste caso.
[0199] Depois de ter realizado a ocultação, o ciclo termina e um novo quadro pode ser decodificado em S101'.
[0200] Deve-se observar que o atraso do pitch usado pelo PLC é o valor 19 (tmelhor) preparado pelo aparelho 10 e/ou 60b, com base na seleção entre as estimativas T 1 e T2, como discutido acima.
10. OUTROS EXEMPLOS
[0201] A Figura 7 mostra um aparelho 110 que pode implantar o aparelho 10 e/ou 60a realiza pelo menos algumas etapas dos métodos acima. O aparelho 110 pode compreender um processador 111 e uma unidade de memória não transitória 112 que armazena instruções (por exemplo, um programa) que, quando executadas pelo processador 111, podem fazer com que o processador 111 realize uma primeira estimativa 112a (por exemplo, para implantar o primeiro estimador 11), uma segunda estimativa 112b (por exemplo, de modo a implantar o segundo estimador 12) e/ou uma seleção em 112c (por exemplo, de modo a implantar o seletor 18). O aparelho 110 pode compreender uma unidade de entrada 116, que pode obter um sinal de informações de entrada (por exemplo, um sinal de áudio). O aparelho pode armazenar um fluxo de bits, por exemplo, no espaço de armazenamento 128.
[0202] A Figura 8 mostra um aparelho 120 que pode implantar o decodificador 60b e / ou executar uma filtragem LTPF, por exemplo. O aparelho 120 pode compreender um processador 121 e uma unidade de memória não transitória 122 que armazena instruções 122a (por exemplo, um programa) que, quando executadas pelo processador 121, podem fazer com que o processador 121 execute, inter alia, uma operação de filtragem LTPF, por exemplo, com base em um parâmetro obtido do codificador. O aparelho 120 pode compreender uma unidade de entrada 126, que pode obter uma representação decodificada de um sinal de informações (por exemplo, um sinal de áudio). O processador 121 pode, portanto, realizar processos para obter uma representação decodificada do sinal de informações. Essa representação decodificada pode ser fornecida a unidades externas com uso de uma unidade de saída 127. A unidade de saída 127 pode compreender, por exemplo, uma unidade de comunicação para se comunicar com dispositivos externos (por exemplo, com uso de comunicação sem fio, como Bluetooth) e/ou espaços de armazenamento externos. O processador 121 pode salvar a representação decodificada do sinal de áudio em um espaço de armazenamento local 128.
[0203] Em exemplos, os sistemas 110 e 120 podem ser o mesmo dispositivo.
[0204] Dependendo de certos requisitos de implantação, os exemplos podem ser implantados em hardware. A implantação pode ser realizada com uso de um meio de armazenamento digital, por exemplo, um disquete, um disco versátil digital (DVD), um disco Blu-Ray, um disco compacto (CD), uma memória somente de leitura (ROM), uma memória programável somente de leitura (PROM), uma memória apagável e programável somente de leitura (EPROM), uma memória programável somente de leitura eletricamente apagável (EEPROM) ou uma memória flash, com sinais de controle legíveis eletronicamente armazenados na mesma, que cooperam (ou que têm capacidade de cooperar) com um sistema de computador programável, de modo que o método respectivo seja realizado. Por isso, o meio de armazenamento digital pode ser legível por computador.
[0205] Geralmente, os exemplos podem ser implantados como um produto de programa de computador com instruções de programa, sendo que as instruções de programa são operacionais para realizar um dos métodos, quando o produto de programa de computador for executado em um computador. As instruções do programa podem, por exemplo, ser armazenadas em um meio legível por máquina.
[0206] Outros exemplos compreendem o programa de computador para realizar um dos métodos descritos no presente documento, armazenados em um suporte legível por máquina. Em outras palavras, um exemplo de método é, por isso, um programa de computador que tem instruções de programa para realizar um dos métodos descritos no presente documento, quando o programa de computador é executado em um computador.
[0207] Um exemplo adicional dos métodos é, por isso, um meio portador de dados (ou um meio de armazenamento digital ou um meio legível por computador) que compreende, gravado no mesmo, o programa de computador para realizar um dos métodos descritos no presente documento. O meio portador de dados, o meio de armazenamento digital ou o meio gravado são tangíveis e/ou não-transitórios, em vez de sinais intangíveis e transitórios.
[0208] Um exemplo adicional compreende uma unidade de processamento, por exemplo, um computador ou um dispositivo lógico programável que executa um dos métodos descritos no presente documento.
[0209] Um exemplo adicional compreende um computador que tem instalado no mesmo o programa de computador para realizar um dos métodos descritos no presente documento.
[0210] Um exemplo adicional compreende um aparelho ou um sistema que transfere (por exemplo, eletrônica ou opticamente) um programa de computador para realizar um dos métodos descritos no presente documento para um receptor. O receptor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou semelhante. O aparelho ou sistema pode, por exemplo, compreender um servidor de arquivos para transferir o programa de computador para o receptor.
[0211] Em alguns exemplos, um dispositivo lógico programável (por exemplo, uma matriz de porta programável em campo) pode ser usado para realizar algumas ou todas as funcionalidades dos métodos descritos no presente documento. Em alguns exemplos, uma matriz de porta programável em campo pode cooperar com um microprocessador para realizar um dos métodos descritos no presente documento. Geralmente, os métodos podem ser realizados por qualquer aparelho de hardware apropriado.
[0212] Os exemplos descritos acima são ilustrativos para os princípios discutidos acima. Entende-se que modificações e variações das disposições e os detalhes descritos no presente documento serão evidentes. Por isso, a intenção é se limitar pelo escopo das reivindicações iminentes de patentes, e não pelos detalhes específicos apresentados por meio de descrição e explicação dos exemplos apresentados no presente documento.

Claims (23)

REIVINDICAÇÕES
1. Aparelho (10, 60a, 110) para codificar um sinal de informações que inclui uma pluralidade de quadros, sendo que o aparelho é caracterizado por compreender: um primeiro estimador (11) configurado para obter uma primeira estimativa (14, T1), sendo que a primeira estimativa é uma estimativa de um atraso de pitch para um quadro atual (13), em que a primeira estimativa (14) é obtida como o atraso (T 1) que maximiza uma primeira função de correlação associada ao quadro atual (13); um segundo estimador (12) configurado para obter uma segunda estimativa (16, T2), sendo que a segunda estimativa é outra estimativa de um atraso de pitch para o quadro atual (13), em que o segundo estimador (12) é condicionado pelo atraso de pitch (51, 19”) selecionado no quadro anterior de modo a obter a segunda estimativa (16, T2) para o quadro atual (13), em que o segundo estimador (12) é configurado para obter a segunda estimativa (16, T2) por meio de busca do atraso que maximiza uma segunda função de correlação em um segundo subintervalo (52) que contém o atraso do pitch (51, 19”) selecionado para o quadro anterior, um seletor (17) configurado para escolher (S103) um valor selecionado (19, Tmelhor) realizando-se uma seleção entre a primeira estimativa (14, T1) e a segunda estimativa (16, T2) com base em pelo menos uma medição de correlação (23, 25), em que o seletor (17) é configurado para realizar uma comparação (27) entre: uma versão reduzida (24) de uma primeira medição de correlação normalizada (23) associada ao quadro atual (13) e obtida em um atraso correspondente à primeira estimativa (14, T1); e uma segunda medição de correlação normalizada (25) associada ao quadro atual (13) e obtida em um atraso correspondente à segunda estimativa (16, T2), de modo a selecionar a primeira estimativa (14, T1) quando a segunda medição de correlação normalizada (25) for menor que a versão reduzida (24) da primeira medição de correlação normalizada (23) e/ou para selecionar a segunda estimativa (16, T2) quando a segunda medição de correlação normalizada (25) for maior que a versão reduzida (24) da primeira medição de correlação normalizada (23).
2. Aparelho (60a), de acordo com a reivindicação 1, caracterizado por compreender adicionalmente: uma unidade de detecção (10, 65) que compreende o primeiro estimador, o segundo estimador e o seletor (17); e uma ferramenta de pós-filtragem a longo prazo, LTPF, (66) configurada para codificar dados úteis para realizar a LTPF no decodificador (60b), sendo que os dados úteis para realizar a LTPF incluem o valor selecionado (19, Tmelhor).
3. Aparelho, de acordo com a reivindicação 1, caracterizado por compreender adicionalmente, a jusante do seletor (17), uma ferramenta de pós- filtragem a longo prazo, LTPF (66), para controlar um pós-filtro a longo prazo (67) em um aparelho decodificador (60b).
4. Aparelho, de acordo com qualquer uma das reivindicações 1 a 3, configurado para comparar a harmonicidade do valor selecionado (19, Tmelhor) com um limiar predeterminado de LTPF, de modo a evitar codificar o valor selecionado (19, Tmelhor), no caso de a harmonicidade do valor selecionado (19 , Tmelhor) estar abaixo do limiar predeterminado.
5. Aparelho, de acordo com qualquer uma das reivindicações 1 a 4, caracterizado por: o segundo subintervalo (52) conter atrasos (T) em uma distância inferior a um limiar de número de atraso predefinido a partir do atraso de pitch (51, 19”) selecionado para o quadro anterior.
6. Aparelho, de acordo com qualquer uma das reivindicações 1 a 5, caracterizado por o segundo estimador (12) ser configurado para: buscar um valor máximo entre os valores da segunda função de correlação para associar a segunda estimativa (16) ao atraso (T2) associado ao valor máximo entre os valores da segunda função de correlação.
7. Aparelho, de acordo com qualquer uma das reivindicações 1 a 6,
caracterizado por a primeira função de correlação ser restrita a atrasos em um primeiro subintervalo.
8. Aparelho, de acordo com a reivindicação 7, caracterizado por o primeiro subintervalo conter um número de atrasos maior que o segundo subintervalo (52) e/ou pelo menos alguns dos atrasos no segundo subintervalo (52) serem compreendidos no primeiro subintervalo.
9. Aparelho, de acordo com qualquer uma das reivindicações 1 a 8, caracterizado por o primeiro estimador (11) ser configurado para: ponderar os valores de medição de correlação de uma primeira função de correlação com uso de uma função de peso monotonicamente decrescente antes de buscar o atraso (T1) que maximiza a primeira função de correlação.
10. Aparelho, de acordo com qualquer uma das reivindicações 1 a 9, caracterizado por o primeiro estimador (11) ser configurado para obter a primeira estimativa 𝑇1 realizando-se pelo menos algumas das seguintes operações: 𝑇1 = argmax 𝑅𝑤 (𝑘) 𝑘=𝑘𝑚𝑖𝑛 …𝑘𝑚𝑎𝑥 𝑅𝑤 (𝑘) = 𝑅(𝑘)𝑤(𝑘) 𝑝𝑎𝑟𝑎 𝑘 = 𝑘𝑚𝑖𝑛 . . 𝑘𝑚𝑎𝑥 (𝑘 − 𝑘𝑚𝑖𝑛 ) 𝑤(𝑘) = 1 − 0,5 𝑝𝑎𝑟𝑎 𝑘 = 𝑘𝑚𝑖𝑛 . . 𝑘𝑚𝑎𝑥 (𝑘𝑚𝑎𝑥 − 𝑘𝑚𝑖𝑛 ) 𝑁−1 𝑅(𝑘) = ∑ 𝑥(𝑛)𝑥(𝑛 − 𝑘) 𝑝𝑎𝑟𝑎 𝑘 = 𝑘𝑚𝑖𝑛 . . 𝑘𝑚𝑎𝑥 𝑛=0 sendo que 𝑤(𝑘) é uma função de ponderação, 𝑘𝑚𝑖𝑛 e 𝑘𝑚𝑎𝑥 são associados a um atraso mínimo e um atraso máximo, 𝑅 é um valor de medição de autocorrelação estimado com base no sinal de informações ou em uma versão processada do mesmo e em que N é o comprimento do quadro, x é o sinal de informações.
11. Aparelho, de acordo com qualquer uma das reivindicações 1 a 10, caracterizado por o segundo estimador (12) ser configurado para obter a segunda estimativa 𝑇2 realizando-se: 𝑇2 = argmax 𝑅(𝑘) ′ 𝑘=𝑘𝑚𝑖𝑛 ′ …𝑘𝑚𝑎𝑥 ′ ′ sendo que 𝑘𝑚𝑖𝑛 = max (𝑘𝑚𝑖𝑛 , 𝑇𝑎𝑛𝑡 − 𝛿), 𝑘𝑚𝑎𝑥 = min (𝑘𝑚𝑎𝑥 , 𝑇𝑎𝑛𝑡 + 𝛿), 𝑇𝑎𝑛𝑡 são a estimativa selecionada no quadro anterior, 𝛿 é uma distância de 𝑇𝑎𝑛𝑡 , 𝑘𝑚𝑖𝑛 e 𝑘𝑚𝑎𝑥 são associados a um atraso mínimo e a um atraso máximo, R é um valor de medição de autocorrelação estimado com base no sinal de informações ou em uma versão processada do mesmo.
12. Aparelho, de acordo com qualquer uma das reivindicações 1 a 11, caracterizado por o seletor (17) ser configurado para realizar uma seleção da estimativa de atraso de pitch 𝑇𝑎𝑡𝑢𝑎𝑙 em termos de 𝑇 se normcorr(𝑥, 𝑁, 𝑇2 ) ≤ 𝛼normcorr(𝑥, 𝑁, 𝑇1 ) 𝑇𝑎𝑡𝑢𝑎𝑙 = { 1 𝑇2 ao contrário sendo que 𝑇1 é a primeira estimativa, 𝑇2 é a segunda estimativa, 𝑥 é um valor do sinal de informações ou uma versão processada do mesmo, normcorr(𝑥, 𝑁, 𝑇) é a medição de correlação normalizada do sinal 𝑥 de comprimento 𝑁 no atraso 𝑇, 𝛼 é um coeficiente de redução.
13. Aparelho, de acordo com qualquer uma das reivindicações 1 a 12, caracterizado por o sinal de informações ser um sinal de áudio.
14. Aparelho, de acordo com qualquer uma das reivindicações 1 a 13, caracterizado por ser configurado para obter a primeira e a segunda medição de correlação normalizadas com uso da mesma função de correlação até uma função de ponderação.
15. Aparelho, de acordo com qualquer uma das reivindicações 1 a 14, caracterizado por ser configurado para obter a primeira medição de correlação normalizada como a versão normalizada da primeira estimativa até uma função de ponderação.
16. Aparelho, de acordo com qualquer uma das reivindicações 1 a 15, caracterizado por ser configurado para obter a segunda medição de correlação normalizada como a versão normalizada da segunda estimativa.
17. Aparelho, de acordo com qualquer uma das reivindicações 1 a 16, caracterizado por compreender adicionalmente um codificador de transformação (62) configurado para gerar uma representação (63a) do sinal de informações (61) ou uma versão processada do mesmo.
18. Sistema (60) caracterizado por compreender um lado do codificador
(10, 60a) e um lado do decodificador (60b), sendo que o lado do codificador compreende o aparelho, de acordo com qualquer uma das reivindicações 1 a 17, sendo que o lado do decodificador compreende uma ferramenta de pós-filtragem a longo prazo (67) controlada com base na estimativa do atraso do pitch selecionada pelo seletor (17).
19. Método (100) para determinar um atraso de pitch para um sinal dividido em quadros caracterizado por compreender: realizar uma primeira estimativa para um quadro atual (S101) para obter a primeira estimativa (14) como o atraso (T1) que maximiza uma primeira função de correlação associada ao quadro atual (13); realizar uma segunda estimativa para o quadro atual (S102) obtida buscando-se o atraso (T2) que maximiza uma segunda função de correlação em um segundo subintervalo (52) que contém o atraso do pitch (51, 19") selecionado para o quadro anterior, em que a realização da segunda estimativa é obtida com base no resultado de uma etapa de seleção realizada no quadro anterior ; e selecionar entre a primeira estimativa (14, T1) obtida na primeira estimativa e a segunda estimativa (16, T2) obtida na segunda estimativa com base na primeira e na segunda medição de correlação normalizada (S103), em que selecionar inclui realizar uma comparação entre: uma versão reduzida (24) de uma primeira medição de autocorrelação normalizada (23) associada ao quadro atual (13) e obtida em um atraso correspondente à primeira estimativa (14, T1); a segunda medição de autocorrelação normalizada (25) associada ao quadro atual (13) e obtida em um atraso correspondente à segunda estimativa (16, T2); e selecionar a primeira estimativa (14, T1) quando a segunda medição de autocorrelação normalizada (25) for menor que a versão reduzida da primeira medição de autocorrelação normalizada (23) e/ou selecionar a segunda estimativa (16, T 2) quando a segunda medição de autocorrelação normalizada (25) for maior que a versão reduzida da primeira medição de autocorrelação normalizada (23),
20. Método, de acordo com a reivindicação 19, caracterizado por compreender adicionalmente o uso do atraso selecionado para pós-filtragem a longo prazo, LTPF.
21. Método (100) para codificar um fluxo de bits para um sinal dividido em quadros caracterizado por compreender: realizar o método, de acordo com a reivindicação 19 ou 20; e codificar dados úteis para realizar LTPF no decodificador (60b), sendo que os dados úteis para executar LTPF incluem o valor selecionado (19, Tmelhor).
22. Método, de acordo com qualquer uma das reivindicações 19 a 21, caracterizado por compreender adicionalmente usar o atraso selecionado para ocultação de pacotes perdidos, PLC.
23. Programa caracterizado por compreender instruções que, quando executadas por um processador (111), fazem com que o processador realize um método, de acordo com qualquer uma das reivindicações 19 a 22.
BR112020009114-6A 2017-11-10 2018-11-05 aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sistema que compreende um lado do codificador e um lado do decodificador, método para determinar um atraso de pitch e programa que compreende instruções BR112020009114A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP17201091.0 2017-11-10
EP17201091.0A EP3483886A1 (en) 2017-11-10 2017-11-10 Selecting pitch lag
PCT/EP2018/080195 WO2019091922A1 (en) 2017-11-10 2018-11-05 Selecting pitch lag

Publications (1)

Publication Number Publication Date
BR112020009114A2 true BR112020009114A2 (pt) 2020-10-13

Family

ID=60301906

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112020009114-6A BR112020009114A2 (pt) 2017-11-10 2018-11-05 aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sistema que compreende um lado do codificador e um lado do decodificador, método para determinar um atraso de pitch e programa que compreende instruções

Country Status (18)

Country Link
US (1) US11380341B2 (pt)
EP (2) EP3483886A1 (pt)
JP (1) JP7079325B2 (pt)
KR (1) KR102426050B1 (pt)
CN (1) CN111566733B (pt)
AR (1) AR114388A1 (pt)
AU (1) AU2018363670B2 (pt)
BR (1) BR112020009114A2 (pt)
CA (1) CA3082175C (pt)
ES (1) ES2900058T3 (pt)
MX (1) MX2020004786A (pt)
PL (1) PL3707718T3 (pt)
PT (1) PT3707718T (pt)
RU (1) RU2742739C1 (pt)
SG (1) SG11202004203WA (pt)
TW (1) TWI728277B (pt)
WO (1) WO2019091922A1 (pt)
ZA (1) ZA202002521B (pt)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11756530B2 (en) * 2019-10-19 2023-09-12 Google Llc Self-supervised pitch estimation
US11699209B2 (en) * 2020-10-22 2023-07-11 Huawei Cloud Computing Technologies Co., Ltd. Method and apparatus for embedding and extracting digital watermarking for numerical data

Family Cites Families (184)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3639753A1 (de) 1986-11-21 1988-06-01 Inst Rundfunktechnik Gmbh Verfahren zum uebertragen digitalisierter tonsignale
US5012517A (en) 1989-04-18 1991-04-30 Pacific Communication Science, Inc. Adaptive transform coder having long term predictor
US5233660A (en) * 1991-09-10 1993-08-03 At&T Bell Laboratories Method and apparatus for low-delay celp speech coding and decoding
JPH05281996A (ja) * 1992-03-31 1993-10-29 Sony Corp ピッチ抽出装置
IT1270438B (it) * 1993-06-10 1997-05-05 Sip Procedimento e dispositivo per la determinazione del periodo del tono fondamentale e la classificazione del segnale vocale in codificatori numerici della voce
US5581653A (en) 1993-08-31 1996-12-03 Dolby Laboratories Licensing Corporation Low bit-rate high-resolution spectral envelope coding for audio encoder and decoder
JP3402748B2 (ja) * 1994-05-23 2003-05-06 三洋電機株式会社 音声信号のピッチ周期抽出装置
JPH0811644A (ja) 1994-06-27 1996-01-16 Nissan Motor Co Ltd ルーフモール取付構造
US6167093A (en) 1994-08-16 2000-12-26 Sony Corporation Method and apparatus for encoding the information, method and apparatus for decoding the information and method for information transmission
DE69619284T3 (de) 1995-03-13 2006-04-27 Matsushita Electric Industrial Co., Ltd., Kadoma Vorrichtung zur Erweiterung der Sprachbandbreite
US5781888A (en) 1996-01-16 1998-07-14 Lucent Technologies Inc. Perceptual noise shaping in the time domain via LPC prediction in the frequency domain
WO1997027578A1 (en) * 1996-01-26 1997-07-31 Motorola Inc. Very low bit rate time domain speech analyzer for voice messaging
US5812971A (en) 1996-03-22 1998-09-22 Lucent Technologies Inc. Enhanced joint stereo coding method using temporal envelope shaping
JPH1091194A (ja) 1996-09-18 1998-04-10 Sony Corp 音声復号化方法及び装置
US6570991B1 (en) 1996-12-18 2003-05-27 Interval Research Corporation Multi-feature speech/music discrimination system
KR100261253B1 (ko) 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 부호화/복호화 방법및 장치
GB2326572A (en) 1997-06-19 1998-12-23 Softsound Limited Low bit rate audio coder and decoder
WO1999016050A1 (en) 1997-09-23 1999-04-01 Voxware, Inc. Scalable and embedded codec for speech and audio signals
JP3344962B2 (ja) 1998-03-11 2002-11-18 松下電器産業株式会社 オーディオ信号符号化装置、及びオーディオ信号復号化装置
US6507814B1 (en) * 1998-08-24 2003-01-14 Conexant Systems, Inc. Pitch determination using speech classification and prior pitch estimation
US7272556B1 (en) 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6636829B1 (en) * 1999-09-22 2003-10-21 Mindspeed Technologies, Inc. Speech communication system and method for handling lost frames
US6735561B1 (en) 2000-03-29 2004-05-11 At&T Corp. Effective deployment of temporal noise shaping (TNS) filters
EP1139665A1 (en) 2000-03-29 2001-10-04 Deutsche Thomson-Brandt Gmbh Method and apparatus for changing the output delay of audio or video data encoding
US7099830B1 (en) 2000-03-29 2006-08-29 At&T Corp. Effective deployment of temporal noise shaping (TNS) filters
US6665638B1 (en) * 2000-04-17 2003-12-16 At&T Corp. Adaptive short-term post-filters for speech coders
US7395209B1 (en) 2000-05-12 2008-07-01 Cirrus Logic, Inc. Fixed point audio decoding system and method
WO2002101717A2 (en) * 2001-06-11 2002-12-19 Ivl Technologies Ltd. Pitch candidate selection method for multi-channel pitch detectors
US7512535B2 (en) 2001-10-03 2009-03-31 Broadcom Corporation Adaptive postfiltering methods and systems for decoding speech
US6785645B2 (en) 2001-11-29 2004-08-31 Microsoft Corporation Real-time speech and music classifier
US20030187663A1 (en) 2002-03-28 2003-10-02 Truman Michael Mead Broadband frequency translation for high frequency regeneration
US7447631B2 (en) 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
US7502743B2 (en) 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
US7433824B2 (en) 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
JP4287637B2 (ja) 2002-10-17 2009-07-01 パナソニック株式会社 音声符号化装置、音声符号化方法及びプログラム
JP4431568B2 (ja) * 2003-02-11 2010-03-17 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 音声符号化
KR20030031936A (ko) * 2003-02-13 2003-04-23 배명진 피치변경법을 이용한 단일 음성 다중 목소리 합성기
US20040162866A1 (en) 2003-02-19 2004-08-19 Malvar Henrique S. System and method for producing fast modulated complex lapped transforms
ATE503246T1 (de) 2003-06-17 2011-04-15 Panasonic Corp Empfangsvorrichtung, sendevorrichtung und übertragungssystem
US7548852B2 (en) 2003-06-30 2009-06-16 Koninklijke Philips Electronics N.V. Quality of decoded audio by adding noise
US7620545B2 (en) 2003-07-08 2009-11-17 Industrial Technology Research Institute Scale factor based bit shifting in fine granularity scalability audio coding
KR100550003B1 (ko) * 2003-07-11 2006-02-08 학교법인연세대학교 상호부호화기에서 개회로 피치 추정 방법 및 그 장치
ATE425533T1 (de) * 2003-07-18 2009-03-15 Koninkl Philips Electronics Nv Audiocodierung mit niedriger bitrate
US7983909B2 (en) 2003-09-15 2011-07-19 Intel Corporation Method and apparatus for encoding audio data
US7009533B1 (en) 2004-02-13 2006-03-07 Samplify Systems Llc Adaptive compression and decompression of bandlimited signals
KR20050087956A (ko) 2004-02-27 2005-09-01 삼성전자주식회사 무손실 오디오 부호화/복호화 방법 및 장치
DE102004009954B4 (de) 2004-03-01 2005-12-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verarbeiten eines Multikanalsignals
EP1914722B1 (en) 2004-03-01 2009-04-29 Dolby Laboratories Licensing Corporation Multichannel audio decoding
DE102004009949B4 (de) 2004-03-01 2006-03-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Ermitteln eines Schätzwertes
JP4744438B2 (ja) 2004-03-05 2011-08-10 パナソニック株式会社 エラー隠蔽装置およびエラー隠蔽方法
US7392195B2 (en) 2004-03-25 2008-06-24 Dts, Inc. Lossless multi-channel audio codec
US7933767B2 (en) * 2004-12-27 2011-04-26 Nokia Corporation Systems and methods for determining pitch lag for a current frame of information
EP1864281A1 (en) 2005-04-01 2007-12-12 QUALCOMM Incorporated Systems, methods, and apparatus for highband burst suppression
US7539612B2 (en) 2005-07-15 2009-05-26 Microsoft Corporation Coding and decoding scale factor information
US7546240B2 (en) 2005-07-15 2009-06-09 Microsoft Corporation Coding with improved time resolution for selected segments via adaptive block transformation of a group of samples from a subband decomposition
KR20070037945A (ko) 2005-10-04 2007-04-09 삼성전자주식회사 오디오 신호의 부호화/복호화 방법 및 장치
US20070118361A1 (en) 2005-10-07 2007-05-24 Deepen Sinha Window apparatus and method
KR100888474B1 (ko) 2005-11-21 2009-03-12 삼성전자주식회사 멀티채널 오디오 신호의 부호화/복호화 장치 및 방법
US7805297B2 (en) 2005-11-23 2010-09-28 Broadcom Corporation Classification-based frame loss concealment for audio signals
US9123350B2 (en) 2005-12-14 2015-09-01 Panasonic Intellectual Property Management Co., Ltd. Method and system for extracting audio features from an encoded bitstream for audio classification
US8255207B2 (en) 2005-12-28 2012-08-28 Voiceage Corporation Method and device for efficient frame erasure concealment in speech codecs
US8345890B2 (en) 2006-01-05 2013-01-01 Audience, Inc. System and method for utilizing inter-microphone level differences for speech enhancement
WO2007102782A2 (en) 2006-03-07 2007-09-13 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for audio coding and decoding
US8150065B2 (en) 2006-05-25 2012-04-03 Audience, Inc. System and method for processing an audio signal
EP2030199B1 (en) 2006-05-30 2009-10-28 Koninklijke Philips Electronics N.V. Linear predictive coding of an audio signal
CN1983909B (zh) * 2006-06-08 2010-07-28 华为技术有限公司 一种丢帧隐藏装置和方法
US8015000B2 (en) 2006-08-03 2011-09-06 Broadcom Corporation Classification-based frame loss concealment for audio signals
ATE496365T1 (de) 2006-08-15 2011-02-15 Dolby Lab Licensing Corp Arbiträre formung einer temporären rauschhüllkurve ohne nebeninformation
FR2905510B1 (fr) 2006-09-01 2009-04-10 Voxler Soc Par Actions Simplif Procede d'analyse en temps reel de la voix pour le controle en temps reel d'un organe numerique et dispositif associe
CN101140759B (zh) 2006-09-08 2010-05-12 华为技术有限公司 语音或音频信号的带宽扩展方法及系统
US7752038B2 (en) 2006-10-13 2010-07-06 Nokia Corporation Pitch lag estimation
DE102006049154B4 (de) 2006-10-18 2009-07-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodierung eines Informationssignals
KR101292771B1 (ko) 2006-11-24 2013-08-16 삼성전자주식회사 오디오 신호의 오류은폐방법 및 장치
EP2099026A4 (en) 2006-12-13 2011-02-23 Panasonic Corp POST-FILTER AND FILTERING METHOD
FR2912249A1 (fr) 2007-02-02 2008-08-08 France Telecom Codage/decodage perfectionnes de signaux audionumeriques.
JP4871894B2 (ja) 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
EP2015293A1 (en) 2007-06-14 2009-01-14 Deutsche Thomson OHG Method and apparatus for encoding and decoding an audio signal using adaptively switched temporal resolution in the spectral domain
JP5618826B2 (ja) * 2007-06-14 2014-11-05 ヴォイスエイジ・コーポレーション Itu.t勧告g.711と相互運用可能なpcmコーデックにおいてフレーム消失を補償する装置および方法
JP4928366B2 (ja) 2007-06-25 2012-05-09 日本電信電話株式会社 ピッチ探索装置、パケット消失補償装置、それらの方法、プログラム及びその記録媒体
JP4572218B2 (ja) 2007-06-27 2010-11-04 日本電信電話株式会社 音楽区間検出方法、音楽区間検出装置、音楽区間検出プログラム及び記録媒体
US10795949B2 (en) 2007-07-26 2020-10-06 Hamid Hatami-Hanza Methods and systems for investigation of compositions of ontological subjects and intelligent systems therefrom
WO2009027606A1 (fr) 2007-08-24 2009-03-05 France Telecom Codage/decodage par plans de symboles, avec calcul dynamique de tables de probabilites
WO2009029035A1 (en) 2007-08-27 2009-03-05 Telefonaktiebolaget Lm Ericsson (Publ) Improved transform coding of speech and audio signals
CN100524462C (zh) 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
KR101290622B1 (ko) 2007-11-02 2013-07-29 후아웨이 테크놀러지 컴퍼니 리미티드 오디오 복호화 방법 및 장치
WO2009066869A1 (en) 2007-11-21 2009-05-28 Electronics And Telecommunications Research Institute Frequency band determining method for quantization noise shaping and transient noise shaping method using the same
WO2009084918A1 (en) 2007-12-31 2009-07-09 Lg Electronics Inc. A method and an apparatus for processing an audio signal
US8386271B2 (en) 2008-03-25 2013-02-26 Microsoft Corporation Lossless and near lossless scalable audio codec
AU2009256551B2 (en) 2008-06-13 2015-08-13 Nokia Technologies Oy Method and apparatus for error concealment of encoded audio data
EP2144231A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme with common preprocessing
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
PL2346030T3 (pl) 2008-07-11 2015-03-31 Fraunhofer Ges Forschung Koder audio, sposób kodowania sygnału audio oraz program komputerowy
WO2010003663A1 (en) 2008-07-11 2010-01-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder for encoding frames of sampled audio signals
US8577673B2 (en) * 2008-09-15 2013-11-05 Huawei Technologies Co., Ltd. CELP post-processing for music signals
EP2345030A2 (en) 2008-10-08 2011-07-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Multi-resolution switched audio encoding/decoding scheme
GB2466673B (en) 2009-01-06 2012-11-07 Skype Quantization
ES2567129T3 (es) 2009-01-28 2016-04-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificador de audio, decodificador de audio, información de audio codificada, métodos para la codificación y decodificación de una señal de audio y programa de ordenador
JP4945586B2 (ja) 2009-02-02 2012-06-06 株式会社東芝 信号帯域拡張装置
US20100223061A1 (en) 2009-02-27 2010-09-02 Nokia Corporation Method and Apparatus for Audio Coding
JP4932917B2 (ja) 2009-04-03 2012-05-16 株式会社エヌ・ティ・ティ・ドコモ 音声復号装置、音声復号方法、及び音声復号プログラム
FR2944664A1 (fr) * 2009-04-21 2010-10-22 Thomson Licensing Dispositif et procede de traitement d'images
US8428938B2 (en) 2009-06-04 2013-04-23 Qualcomm Incorporated Systems and methods for reconstructing an erased speech frame
US8352252B2 (en) 2009-06-04 2013-01-08 Qualcomm Incorporated Systems and methods for preventing the loss of information within a speech frame
KR20100136890A (ko) 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
CN101958119B (zh) 2009-07-16 2012-02-29 中兴通讯股份有限公司 一种改进的离散余弦变换域音频丢帧补偿器和补偿方法
CA2777073C (en) 2009-10-08 2015-11-24 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Multi-mode audio signal decoder, multi-mode audio signal encoder, methods and computer program using a linear-prediction-coding based noise shaping
EP3693963B1 (en) 2009-10-15 2021-07-21 VoiceAge Corporation Simultaneous time-domain and frequency-domain noise shaping for tdac transforms
PL2473995T3 (pl) 2009-10-20 2015-06-30 Fraunhofer Ges Forschung Koder sygnału audio, dekoder sygnału audio, sposób dostarczania zakodowanej reprezentacji treści audio, sposób dostarczania dekodowanej reprezentacji treści audio oraz program komputerowy do wykorzystania w zastosowaniach z małym opóźnieniem
CN102667923B (zh) 2009-10-20 2014-11-05 弗兰霍菲尔运输应用研究公司 音频编码器、音频解码器、用于将音频信息编码的方法、用于将音频信息解码的方法
US8207875B2 (en) 2009-10-28 2012-06-26 Motorola Mobility, Inc. Encoder that optimizes bit allocation for information sub-parts
US7978101B2 (en) 2009-10-28 2011-07-12 Motorola Mobility, Inc. Encoder and decoder using arithmetic stage to compress code space that is not fully utilized
KR101761629B1 (ko) 2009-11-24 2017-07-26 엘지전자 주식회사 오디오 신호 처리 방법 및 장치
CA2786944C (en) 2010-01-12 2016-03-15 Fraunhofer Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding and audio information, method for decoding an audio information and computer program using a hash table describing both significant state values and interval boundaries
US20110196673A1 (en) 2010-02-11 2011-08-11 Qualcomm Incorporated Concealing lost packets in a sub-band coding decoder
EP2375409A1 (en) 2010-04-09 2011-10-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder and related methods for processing multi-channel audio signals using complex prediction
FR2961980A1 (fr) 2010-06-24 2011-12-30 France Telecom Controle d'une boucle de retroaction de mise en forme de bruit dans un codeur de signal audionumerique
IL295473B2 (en) 2010-07-02 2023-10-01 Dolby Int Ab After–selective bass filter
JP5600805B2 (ja) 2010-07-20 2014-10-01 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 最適化されたハッシュテーブルを用いるオーディオエンコーダ、オーディオデコーダ、オーディオ情報を符号化するための方法、オーディオ情報を復号化するための方法およびコンピュータプログラム
US9082416B2 (en) * 2010-09-16 2015-07-14 Qualcomm Incorporated Estimating a pitch lag
US8738385B2 (en) 2010-10-20 2014-05-27 Broadcom Corporation Pitch-based pre-filtering and post-filtering for compression of audio signals
MY165853A (en) 2011-02-14 2018-05-18 Fraunhofer Ges Forschung Linear prediction based coding scheme using spectral domain noise shaping
US9270807B2 (en) * 2011-02-23 2016-02-23 Digimarc Corporation Audio localization using audio signal encoding and recognition
AR085445A1 (es) 2011-03-18 2013-10-02 Fraunhofer Ges Forschung Codificador y decodificador que tiene funcionalidad de configuracion flexible
US8977543B2 (en) 2011-04-21 2015-03-10 Samsung Electronics Co., Ltd. Apparatus for quantizing linear predictive coding coefficients, sound encoding apparatus, apparatus for de-quantizing linear predictive coding coefficients, sound decoding apparatus, and electronic device therefore
US8891775B2 (en) 2011-05-09 2014-11-18 Dolby International Ab Method and encoder for processing a digital stereo audio signal
FR2977439A1 (fr) 2011-06-28 2013-01-04 France Telecom Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard.
FR2977969A1 (fr) 2011-07-12 2013-01-18 France Telecom Adaptation de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee
US9363339B2 (en) 2011-07-12 2016-06-07 Hughes Network Systems, Llc Staged data compression, including block level long range compression, for data streams in a communications system
CN103493130B (zh) 2012-01-20 2016-05-18 弗劳恩霍夫应用研究促进协会 用以利用正弦代换进行音频编码及译码的装置和方法
CN103460283B (zh) * 2012-04-05 2015-04-29 华为技术有限公司 确定多信道音频信号的编码参数的方法及多信道音频编码器
US20130282373A1 (en) 2012-04-23 2013-10-24 Qualcomm Incorporated Systems and methods for audio signal processing
US9026451B1 (en) 2012-05-09 2015-05-05 Google Inc. Pitch post-filter
JP6088644B2 (ja) 2012-06-08 2017-03-01 サムスン エレクトロニクス カンパニー リミテッド フレームエラー隠匿方法及びその装置、並びにオーディオ復号化方法及びその装置
GB201210373D0 (en) 2012-06-12 2012-07-25 Meridian Audio Ltd Doubly compatible lossless audio sandwidth extension
FR2992766A1 (fr) 2012-06-29 2014-01-03 France Telecom Attenuation efficace de pre-echos dans un signal audionumerique
CN102779526B (zh) * 2012-08-07 2014-04-16 无锡成电科大科技发展有限公司 语音信号中基音提取及修正方法
US9406307B2 (en) 2012-08-19 2016-08-02 The Regents Of The University Of California Method and apparatus for polyphonic audio signal prediction in coding and networking systems
US9293146B2 (en) 2012-09-04 2016-03-22 Apple Inc. Intensity stereo coding in advanced audio coding
TWI553628B (zh) 2012-09-24 2016-10-11 三星電子股份有限公司 訊框錯誤隱藏方法
CN103714821A (zh) 2012-09-28 2014-04-09 杜比实验室特许公司 基于位置的混合域数据包丢失隐藏
US9401153B2 (en) * 2012-10-15 2016-07-26 Digimarc Corporation Multi-mode audio recognition and auxiliary data encoding and decoding
ITBO20120619A1 (it) 2012-11-09 2014-05-10 Tissue Machinery Co Spa Apparato e metodo di confezionamento di pannolini o altri oggetti sanitari morbidi piatti ripiegati.
US9318116B2 (en) 2012-12-14 2016-04-19 Disney Enterprises, Inc. Acoustic data transmission based on groups of audio receivers
EP2757558A1 (en) 2013-01-18 2014-07-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Time domain level adjustment for audio signal decoding or encoding
FR3001593A1 (fr) 2013-01-31 2014-08-01 France Telecom Correction perfectionnee de perte de trame au decodage d'un signal.
JP6069526B2 (ja) 2013-02-05 2017-02-01 テレフオンアクチーボラゲット エルエム エリクソン(パブル) オーディオフレーム損失のコンシールメントを制御する方法及び装置
TWI530941B (zh) 2013-04-03 2016-04-21 杜比實驗室特許公司 用於基於物件音頻之互動成像的方法與系統
MY181026A (en) * 2013-06-21 2020-12-16 Fraunhofer Ges Forschung Apparatus and method realizing improved concepts for tcx ltp
TR201808890T4 (tr) 2013-06-21 2018-07-23 Fraunhofer Ges Forschung Bir konuşma çerçevesinin yeniden yapılandırılması.
EP2830055A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Context-based entropy coding of sample values of a spectral envelope
EP2830064A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding and encoding an audio signal using adaptive spectral tile selection
RU2638734C2 (ru) 2013-10-18 2017-12-15 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Кодирование спектральных коэффициентов спектра аудиосигнала
US9906858B2 (en) 2013-10-22 2018-02-27 Bongiovi Acoustics Llc System and method for digital signal processing
PL3336840T3 (pl) 2013-10-31 2020-04-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dekoder audio i sposób dostarczania zdekodowanej informacji audio z wykorzystaniem maskowania błędów modyfikującego sygnał pobudzenia w dziedzinie czasu
JP6396459B2 (ja) 2013-10-31 2018-09-26 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 周波数領域における時間的予備整形雑音の挿入によるオーディオ帯域幅拡張
ES2716652T3 (es) 2013-11-13 2019-06-13 Fraunhofer Ges Forschung Codificador para la codificación de una señal de audio, sistema de transmisión de audio y procedimiento para la determinación de valores de corrección
GB2524333A (en) 2014-03-21 2015-09-23 Nokia Technologies Oy Audio signal payload
BR122020015614B1 (pt) 2014-04-17 2022-06-07 Voiceage Evs Llc Método e dispositivo para interpolar parâmetros de filtro de predição linear em um quadro de processamento de sinal sonoro atual seguindo um quadro de processamento de sinal sonoro anterior
US9396733B2 (en) 2014-05-06 2016-07-19 University Of Macau Reversible audio data hiding
NO2780522T3 (pt) 2014-05-15 2018-06-09
EP2963649A1 (en) 2014-07-01 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio processor and method for processing an audio signal using horizontal phase correction
US9685166B2 (en) * 2014-07-26 2017-06-20 Huawei Technologies Co., Ltd. Classification between time-domain coding and frequency domain coding
EP2980799A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for processing an audio signal using a harmonic post-filter
EP2980798A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Harmonicity-dependent controlling of a harmonic filter tool
CN107112022B (zh) 2014-07-28 2020-11-10 三星电子株式会社 用于时域数据包丢失隐藏的方法
AU2015258241B2 (en) * 2014-07-28 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for selecting one of a first encoding algorithm and a second encoding algorithm using harmonics reduction
EP2980796A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
EP2988300A1 (en) 2014-08-18 2016-02-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Switching of sampling rates at audio processing devices
EP3067887A1 (en) 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal
WO2016142002A1 (en) 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal
US10296959B1 (en) 2015-03-30 2019-05-21 Audible, Inc. Automated recommendations of audio narrations
US9886963B2 (en) 2015-04-05 2018-02-06 Qualcomm Incorporated Encoder selection
US10049684B2 (en) 2015-04-05 2018-08-14 Qualcomm Incorporated Audio bandwidth selection
JP6422813B2 (ja) 2015-04-13 2018-11-14 日本電信電話株式会社 符号化装置、復号装置、これらの方法及びプログラム
US9978400B2 (en) 2015-06-11 2018-05-22 Zte Corporation Method and apparatus for frame loss concealment in transform domain
US9837089B2 (en) 2015-06-18 2017-12-05 Qualcomm Incorporated High-band signal generation
US10847170B2 (en) 2015-06-18 2020-11-24 Qualcomm Incorporated Device and method for generating a high-band signal from non-linearly processed sub-ranges
KR20170000933A (ko) * 2015-06-25 2017-01-04 한국전기연구원 시간 지연 추정을 이용한 풍력 터빈의 피치 제어 시스템
US9830921B2 (en) 2015-08-17 2017-11-28 Qualcomm Incorporated High-band target signal control
KR20180040716A (ko) 2015-09-04 2018-04-20 삼성전자주식회사 음질 향상을 위한 신호 처리방법 및 장치
US9978381B2 (en) * 2016-02-12 2018-05-22 Qualcomm Incorporated Encoding of multiple audio signals
US10219147B2 (en) 2016-04-07 2019-02-26 Mediatek Inc. Enhanced codec control
US10283143B2 (en) 2016-04-08 2019-05-07 Friday Harbor Llc Estimating pitch of harmonic signals
CN107103908B (zh) * 2017-05-02 2019-12-24 大连民族大学 复调音乐多音高估计方法及伪双谱在多音高估计中的应用

Also Published As

Publication number Publication date
CA3082175C (en) 2022-11-01
AU2018363670A1 (en) 2020-05-21
MX2020004786A (es) 2020-08-13
KR102426050B1 (ko) 2022-07-28
CN111566733A (zh) 2020-08-21
RU2742739C1 (ru) 2021-02-10
EP3483886A1 (en) 2019-05-15
AU2018363670B2 (en) 2021-02-18
SG11202004203WA (en) 2020-06-29
US20200273475A1 (en) 2020-08-27
PL3707718T3 (pl) 2022-02-21
CN111566733B (zh) 2023-08-01
WO2019091922A1 (en) 2019-05-16
ZA202002521B (en) 2021-10-27
CA3082175A1 (en) 2019-05-16
TW201923755A (zh) 2019-06-16
EP3707718B1 (en) 2021-10-13
AR114388A1 (es) 2020-09-02
JP2021502596A (ja) 2021-01-28
TWI728277B (zh) 2021-05-21
PT3707718T (pt) 2021-12-27
US11380341B2 (en) 2022-07-05
ES2900058T3 (es) 2022-03-15
KR20200083565A (ko) 2020-07-08
JP7079325B2 (ja) 2022-06-01
EP3707718A1 (en) 2020-09-16

Similar Documents

Publication Publication Date Title
ES2434947T3 (es) Procedimiento y dispositivo para la ocultación eficiente de un borrado de trama en códecs de voz
JP5019479B2 (ja) ボコーダにおけるフレームの位相整合のための方法および装置
KR100957265B1 (ko) 잔여분 변경에 의한 보코더 내부의 프레임들을 시간 와핑하는 시스템 및 방법
JP6153661B2 (ja) 改善されたパルス再同期化を採用するacelp型封じ込めにおける適応型コードブックの改善された封じ込めのための装置および方法
BRPI0715978A2 (pt) quadros de alinhamento temporal de vocoder de banda larga
PT3011556T (pt) Para um frame de substituição de um sinal de áudio, descodificador de áudio, receptor de áudio e sistema para transmissão de sinais de áudio
BRPI0715516A2 (pt) sistemas, mÉtodos e equipamentos para limitar fator de ganho
ES2547457T3 (es) Generación de ruido de confort
JP7202161B2 (ja) 改善されたピッチラグ推定を採用するacelp型封じ込めにおける適応型コードブックの改善された封じ込めのための装置および方法
BRPI0609530A2 (pt) método e equipamento para encodificar e decodificar uma porção de banda alta de um sinal de fala
TWI698859B (zh) 編碼及解碼音訊信號之技術
JP2010501896A5 (pt)
RU2675216C1 (ru) Переход от кодирования/декодирования с преобразованием к кодированию/декодированию с предсказанием
BR112013020589B1 (pt) Codec de áudio para suporte de modos de codificação de domínio de tempo e domínio de frequência
BR112020009114A2 (pt) aparelho para codificar um sinal de informações que inclui uma pluralidade de quadros, sistema que compreende um lado do codificador e um lado do decodificador, método para determinar um atraso de pitch e programa que compreende instruções

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B06W Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette]