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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000005259 measurement Methods 0.000 claims abstract description 98
- 230000001143 conditioned effect Effects 0.000 claims abstract description 7
- 238000005314 correlation function Methods 0.000 claims description 22
- 238000001914 filtration Methods 0.000 claims description 16
- 230000001934 delay Effects 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 14
- 230000007774 longterm Effects 0.000 claims description 12
- 230000005236 sound signal Effects 0.000 claims description 10
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 230000009467 reduction Effects 0.000 claims description 2
- 239000011295 pitch Substances 0.000 description 171
- 230000005284 excitation Effects 0.000 description 16
- 101100536354 Drosophila melanogaster tant gene Proteins 0.000 description 13
- 238000005070 sampling Methods 0.000 description 11
- 238000005311 autocorrelation function Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000000737 periodic effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 239000007943 implant Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000012952 Resampling Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 230000002238 attenuated effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005562 fading Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 241000928106 Alain Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/09—Long term prediction, i.e. removing periodical redundancies, e.g. by using adaptive codebook or pitch predictor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/005—Correction of errors induced by the transmission channel, if related to the coding algorithm
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/22—Mode decision, i.e. based on audio signal content versus external parameters
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/26—Pre-filtering or post-filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/06—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/90—Pitch determination of speech signals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3059—Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
- H03M7/3064—Segmenting
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/60—General implementation details not specific to a particular type of compression
- H03M7/6005—Decoder aspects
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/60—General implementation details not specific to a particular type of compression
- H03M7/6011—Encoder 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,
[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
[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
[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
[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-
[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
[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)
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.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17201091.0A EP3483886A1 (en) | 2017-11-10 | 2017-11-10 | Selecting pitch lag |
EP17201091.0 | 2017-11-10 | ||
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021076297A1 (en) * | 2019-10-19 | 2021-04-22 | 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)
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 |
EP0732687B2 (en) | 1995-03-13 | 2005-10-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus for expanding speech bandwidth |
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 | パナソニック株式会社 | 音声符号化装置、音声符号化方法及びプログラム |
KR101049751B1 (ko) * | 2003-02-11 | 2011-07-19 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 오디오 코딩 |
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 |
WO2004112021A2 (en) | 2003-06-17 | 2004-12-23 | Matsushita Electric Industrial Co., Ltd. | Receiving apparatus, sending apparatus and transmission system |
ES2354427T3 (es) | 2003-06-30 | 2011-03-14 | Koninklijke Philips Electronics N.V. | Mejora de la calidad de audio decodificado mediante la adición de ruido. |
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 | 학교법인연세대학교 | 상호부호화기에서 개회로 피치 추정 방법 및 그 장치 |
RU2368018C2 (ru) * | 2003-07-18 | 2009-09-20 | Конинклейке Филипс Электроникс Н.В. | Кодирование аудиосигнала с низкой скоростью передачи битов |
WO2005027096A1 (en) | 2003-09-15 | 2005-03-24 | Zakrytoe Aktsionernoe Obschestvo Intel | Method and apparatus for encoding audio |
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 | 삼성전자주식회사 | 무손실 오디오 부호화/복호화 방법 및 장치 |
ATE527654T1 (de) | 2004-03-01 | 2011-10-15 | Dolby Lab Licensing Corp | Mehrkanal-audiodecodierung |
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 |
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 |
CN1930607B (zh) | 2004-03-05 | 2010-11-10 | 松下电器产业株式会社 | 差错隐藏装置以及差错隐藏方法 |
US7272567B2 (en) | 2004-03-25 | 2007-09-18 | Zoran Fejzo | Scalable lossless audio codec and authoring tool |
US7933767B2 (en) * | 2004-12-27 | 2011-04-26 | Nokia Corporation | Systems and methods for determining pitch lag for a current frame of information |
JP5129117B2 (ja) | 2005-04-01 | 2013-01-23 | クゥアルコム・インコーポレイテッド | 音声信号の高帯域部分を符号化及び復号する方法及び装置 |
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 |
CN101395661B (zh) | 2006-03-07 | 2013-02-06 | 艾利森电话股份有限公司 | 音频编码和解码的方法和设备 |
US8150065B2 (en) | 2006-05-25 | 2012-04-03 | Audience, Inc. | System and method for processing an audio signal |
JP2009539132A (ja) | 2006-05-30 | 2009-11-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | オーディオ信号の線形予測符号化 |
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 |
US8706507B2 (en) | 2006-08-15 | 2014-04-22 | Dolby Laboratories Licensing Corporation | Arbitrary shaping of temporal noise envelope without side-information utilizing unchanged quantization |
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 | 삼성전자주식회사 | 오디오 신호의 오류은폐방법 및 장치 |
WO2008072701A1 (ja) | 2006-12-13 | 2008-06-19 | Panasonic Corporation | ポストフィルタおよびフィルタリング方法 |
FR2912249A1 (fr) | 2007-02-02 | 2008-08-08 | France Telecom | Codage/decodage perfectionnes de signaux audionumeriques. |
JP4871894B2 (ja) | 2007-03-02 | 2012-02-08 | パナソニック株式会社 | 符号化装置、復号装置、符号化方法および復号方法 |
JP5618826B2 (ja) * | 2007-06-14 | 2014-11-05 | ヴォイスエイジ・コーポレーション | Itu.t勧告g.711と相互運用可能なpcmコーデックにおいてフレーム消失を補償する装置および方法 |
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 |
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 |
EP2183851A1 (fr) | 2007-08-24 | 2010-05-12 | 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 | 华为技术有限公司 | 对高带信号进行帧错误隐藏的方法及装置 |
BRPI0818927A2 (pt) | 2007-11-02 | 2015-06-16 | Huawei Tech Co Ltd | Método e aparelho para a decodificação de áudio |
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 |
KR101162275B1 (ko) | 2007-12-31 | 2012-07-04 | 엘지전자 주식회사 | 오디오 신호 처리 방법 및 장치 |
US8386271B2 (en) | 2008-03-25 | 2013-02-26 | Microsoft Corporation | Lossless and near lossless scalable audio codec |
KR101228165B1 (ko) | 2008-06-13 | 2013-01-30 | 노키아 코포레이션 | 프레임 에러 은폐 방법, 장치 및 컴퓨터 판독가능한 저장 매체 |
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 |
EP2311034B1 (en) | 2008-07-11 | 2015-11-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder and decoder for encoding frames of sampled audio signals |
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 |
CA2871268C (en) | 2008-07-11 | 2015-11-03 | Nikolaus Rettelbach | Audio encoder, audio decoder, methods for encoding and decoding an audio signal, audio stream and computer program |
US8577673B2 (en) * | 2008-09-15 | 2013-11-05 | Huawei Technologies Co., Ltd. | CELP post-processing for music signals |
CN102177426B (zh) | 2008-10-08 | 2014-11-05 | 弗兰霍菲尔运输应用研究公司 | 多分辨率切换音频编码/解码方案 |
GB2466673B (en) | 2009-01-06 | 2012-11-07 | Skype | Quantization |
AR075199A1 (es) | 2009-01-28 | 2011-03-16 | Fraunhofer Ges Forschung | Codificador de audio decodificador de audio informacion de audio codificada metodos para la codificacion y decodificacion de una senal de audio y programa de computadora |
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 |
US8352252B2 (en) | 2009-06-04 | 2013-01-08 | Qualcomm Incorporated | Systems and methods for preventing the loss of information within a speech frame |
US8428938B2 (en) | 2009-06-04 | 2013-04-23 | Qualcomm Incorporated | Systems and methods for reconstructing an erased 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 |
ES2797525T3 (es) | 2009-10-15 | 2020-12-02 | Voiceage Corp | Conformación simultánea de ruido en el dominio del tiempo y el dominio de la frecuencia para transformaciones TDAC |
BR122020024236B1 (pt) | 2009-10-20 | 2021-09-14 | Fraunhofer - Gesellschaft Zur Förderung Der Angewandten Forschung E. V. | Codificador de sinal de áudio, decodificador de sinal de áudio, método para prover uma representação codificada de um conteúdo de áudio, método para prover uma representação decodificada de um conteúdo de áudio e programa de computador para uso em aplicações de baixo retardamento |
PL2491553T3 (pl) | 2009-10-20 | 2017-05-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Koder audio, dekoder audio, sposób kodowania informacji audio, sposób dekodowania informacji audio i program komputerowy wykorzystujący iteracyjne zmniejszania rozmiaru przedziału |
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 |
US8207875B2 (en) | 2009-10-28 | 2012-06-26 | Motorola Mobility, Inc. | Encoder that optimizes bit allocation for information sub-parts |
WO2011065741A2 (ko) | 2009-11-24 | 2011-06-03 | 엘지전자 주식회사 | 오디오 신호 처리 방법 및 장치 |
JP5624159B2 (ja) | 2010-01-12 | 2014-11-12 | フラウンホーファーゲゼルシャフトツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. | オーディオ符号化器、オーディオ復号器、オーディオ情報を符号化および復号するための方法、ならびに以前に復号されたスペクトル値のノルムに基づいてコンテキストサブ領域値を取得するコンピュータプログラム |
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 |
WO2012000882A1 (en) | 2010-07-02 | 2012-01-05 | Dolby International Ab | Selective bass post filter |
EP4131258A1 (en) | 2010-07-20 | 2023-02-08 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder, audio decoding method, audio encoder, audio encoding method and computer program |
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 |
CN103477387B (zh) | 2011-02-14 | 2015-11-25 | 弗兰霍菲尔运输应用研究公司 | 使用频谱域噪声整形的基于线性预测的编码方案 |
US9270807B2 (en) * | 2011-02-23 | 2016-02-23 | Digimarc Corporation | Audio localization using audio signal encoding and recognition |
KR101742136B1 (ko) | 2011-03-18 | 2017-05-31 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 오디오 콘텐츠를 표현하는 비트스트림의 프레임들 내의 프레임 요소 배치 |
CN105244034B (zh) | 2011-04-21 | 2019-08-13 | 三星电子株式会社 | 针对语音信号或音频信号的量化方法以及解码方法和设备 |
EP2707873B1 (en) | 2011-05-09 | 2015-04-08 | 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 |
BR112013026452B1 (pt) | 2012-01-20 | 2021-02-17 | Fraunhofer-Gellschaft Zur Förderung Der Angewandten Forschung E.V. | aparelho e método para codificação e decodificação de áudio empregando substituição sinusoidal |
EP2834814B1 (en) * | 2012-04-05 | 2016-03-02 | Huawei Technologies Co., Ltd. | Method for determining an encoding parameter for a multi-channel audio signal and multi-channel audio encoder |
US20130282372A1 (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 |
CN104718571B (zh) | 2012-06-08 | 2018-09-18 | 三星电子株式会社 | 用于隐藏帧错误的方法和设备以及用于音频解码的方法和设备 |
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 |
TWI606440B (zh) | 2012-09-24 | 2017-11-21 | 三星電子股份有限公司 | 訊框錯誤隱藏裝置 |
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. |
MX2021000353A (es) | 2013-02-05 | 2023-02-24 | Ericsson Telefon Ab L M | Método y aparato para controlar ocultación de pérdida de trama de audio. |
TWI530941B (zh) | 2013-04-03 | 2016-04-21 | 杜比實驗室特許公司 | 用於基於物件音頻之互動成像的方法與系統 |
JP6201043B2 (ja) * | 2013-06-21 | 2017-09-20 | フラウンホーファーゲゼルシャフト ツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. | エラー封じ込め中の切替音声符号化システムについての向上した信号フェードアウトのための装置及び方法 |
JP6153661B2 (ja) | 2013-06-21 | 2017-06-28 | フラウンホーファーゲゼルシャフト ツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. | 改善されたパルス再同期化を採用するacelp型封じ込めにおける適応型コードブックの改善された封じ込めのための装置および方法 |
EP2830061A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for encoding and decoding an encoded audio signal using temporal noise/patch shaping |
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 |
MY181965A (en) | 2013-10-18 | 2021-01-15 | Fraunhofer Ges Forschung | Coding of spectral coefficients of a spectrum of an audio signal |
US9906858B2 (en) | 2013-10-22 | 2018-02-27 | Bongiovi Acoustics Llc | System and method for digital signal processing |
BR122022008603B1 (pt) | 2013-10-31 | 2023-01-10 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Decodificador de áudio e método para fornecer uma informação de áudio decodificada utilizando uma dissimulação de erro que modifica um sinal de excitação no domínio de tempo |
CN105706166B (zh) | 2013-10-31 | 2020-07-14 | 弗劳恩霍夫应用研究促进协会 | 对比特流进行解码的音频解码器设备和方法 |
PL3069338T3 (pl) | 2013-11-13 | 2019-06-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Koder do kodowania sygnału audio, system przesyłania audio i sposób określania wartości korekcji |
GB2524333A (en) | 2014-03-21 | 2015-09-23 | Nokia Technologies Oy | Audio signal payload |
HRP20240674T1 (hr) | 2014-04-17 | 2024-08-16 | Voiceage Evs Llc | Postupci, koder i dekoder za linearno prediktivno kodiranje i dekodiranje zvučnih signala pri prijelazu između okvira koji imaju različitu brzinu uzorkovanja |
US9396733B2 (en) | 2014-05-06 | 2016-07-19 | University Of Macau | Reversible audio data hiding |
NO2780522T3 (pt) | 2014-05-15 | 2018-06-09 | ||
EP2963646A1 (en) | 2014-07-01 | 2016-01-06 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Decoder and method for decoding an audio signal, encoder and method for encoding an audio signal |
US9685166B2 (en) * | 2014-07-26 | 2017-06-20 | Huawei Technologies Co., Ltd. | Classification between time-domain coding and frequency domain coding |
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 |
CN110444219B (zh) * | 2014-07-28 | 2023-06-13 | 弗劳恩霍夫应用研究促进协会 | 选择第一编码演算法或第二编码演算法的装置与方法 |
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 |
CN112216289B (zh) | 2014-07-28 | 2023-10-27 | 三星电子株式会社 | 用于音频信号的时域数据包丢失隐藏的方法 |
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 |
EP3067886A1 (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 |
US10049684B2 (en) | 2015-04-05 | 2018-08-14 | Qualcomm Incorporated | Audio bandwidth selection |
US9886963B2 (en) | 2015-04-05 | 2018-02-06 | Qualcomm Incorporated | Encoder 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 |
US10803877B2 (en) | 2015-09-04 | 2020-10-13 | Samsung Electronics Co., Ltd. | Signal processing methods and apparatuses for enhancing sound quality |
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 | 大连民族大学 | 复调音乐多音高估计方法及伪双谱在多音高估计中的应用 |
-
2017
- 2017-11-10 EP EP17201091.0A patent/EP3483886A1/en not_active Withdrawn
-
2018
- 2018-11-05 BR BR112020009114-6A patent/BR112020009114A2/pt unknown
- 2018-11-05 EP EP18795669.3A patent/EP3707718B1/en active Active
- 2018-11-05 PT PT187956693T patent/PT3707718T/pt unknown
- 2018-11-05 KR KR1020207015835A patent/KR102426050B1/ko active IP Right Grant
- 2018-11-05 RU RU2020119049A patent/RU2742739C1/ru active
- 2018-11-05 AU AU2018363670A patent/AU2018363670B2/en active Active
- 2018-11-05 SG SG11202004203WA patent/SG11202004203WA/en unknown
- 2018-11-05 CN CN201880085502.5A patent/CN111566733B/zh active Active
- 2018-11-05 CA CA3082175A patent/CA3082175C/en active Active
- 2018-11-05 PL PL18795669T patent/PL3707718T3/pl unknown
- 2018-11-05 MX MX2020004786A patent/MX2020004786A/es unknown
- 2018-11-05 JP JP2020524874A patent/JP7079325B2/ja active Active
- 2018-11-05 ES ES18795669T patent/ES2900058T3/es active Active
- 2018-11-05 WO PCT/EP2018/080195 patent/WO2019091922A1/en active Search and Examination
- 2018-11-08 TW TW107139704A patent/TWI728277B/zh active
- 2018-11-12 AR ARP180103301A patent/AR114388A1/es active IP Right Grant
-
2020
- 2020-05-07 US US16/869,000 patent/US11380341B2/en active Active
- 2020-05-07 ZA ZA2020/02521A patent/ZA202002521B/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2019091922A1 (en) | 2019-05-16 |
JP7079325B2 (ja) | 2022-06-01 |
ZA202002521B (en) | 2021-10-27 |
US11380341B2 (en) | 2022-07-05 |
CN111566733B (zh) | 2023-08-01 |
US20200273475A1 (en) | 2020-08-27 |
KR102426050B1 (ko) | 2022-07-28 |
AU2018363670A1 (en) | 2020-05-21 |
TW201923755A (zh) | 2019-06-16 |
CA3082175C (en) | 2022-11-01 |
TWI728277B (zh) | 2021-05-21 |
AU2018363670B2 (en) | 2021-02-18 |
KR20200083565A (ko) | 2020-07-08 |
ES2900058T3 (es) | 2022-03-15 |
PT3707718T (pt) | 2021-12-27 |
EP3707718A1 (en) | 2020-09-16 |
RU2742739C1 (ru) | 2021-02-10 |
JP2021502596A (ja) | 2021-01-28 |
MX2020004786A (es) | 2020-08-13 |
EP3483886A1 (en) | 2019-05-15 |
CN111566733A (zh) | 2020-08-21 |
PL3707718T3 (pl) | 2022-02-21 |
AR114388A1 (es) | 2020-09-02 |
SG11202004203WA (en) | 2020-06-29 |
CA3082175A1 (en) | 2019-05-16 |
EP3707718B1 (en) | 2021-10-13 |
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型封じ込めにおける適応型コードブックの改善された封じ込めのための装置および方法 | |
JP5006398B2 (ja) | 広帯域ボコーダのタイムワーピングフレーム | |
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 | |
ES2547457T3 (es) | Generación de ruido de confort | |
JP7202161B2 (ja) | 改善されたピッチラグ推定を採用するacelp型封じ込めにおける適応型コードブックの改善された封じ込めのための装置および方法 | |
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] |