BR112016030384B1 - Ajuste de ganho temporal baseado em característica de sinal de banda alta - Google Patents

Ajuste de ganho temporal baseado em característica de sinal de banda alta Download PDF

Info

Publication number
BR112016030384B1
BR112016030384B1 BR112016030384-9A BR112016030384A BR112016030384B1 BR 112016030384 B1 BR112016030384 B1 BR 112016030384B1 BR 112016030384 A BR112016030384 A BR 112016030384A BR 112016030384 B1 BR112016030384 B1 BR 112016030384B1
Authority
BR
Brazil
Prior art keywords
signal
band
gain
value
highband
Prior art date
Application number
BR112016030384-9A
Other languages
English (en)
Other versions
BR112016030384A2 (pt
Inventor
Venkatraman S. Atti
Venkatesh Krishnan
Vivek Rajendran
Venkata Subrahmanyam Chandra Sekhar Chebiyyam
Subasingha Shaminda Subasingha
Original Assignee
Qualcomm Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Incorporated filed Critical Qualcomm Incorporated
Publication of BR112016030384A2 publication Critical patent/BR112016030384A2/pt
Publication of BR112016030384B1 publication Critical patent/BR112016030384B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • G10L21/0224Processing in the time domain
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/12Speech 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 prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L2019/0001Codebooks
    • G10L2019/0016Codebook for LPC parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/038Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques

Abstract

AJUSTE DE GANHO TEMPORAL BASEADO EM CARACTERÍSTICA DE SINAL DE BANDA ALTA A presente revelação fornece técnicas para ajustar um parâmetro de ganho temporal e para ajustar coeficientes de previsão linear. Um valor do parâmetro de ganho temporal pode ter como base uma comparação de uma porção de banda alta sintetizada de um sinal de áudio para uma porção de banda alta do sinal de áudio. Se uma característica de sinal de uma faixa de frequência superior da porção de banda alta satisfizer um primeiro limiar, o parâmetro de ganho temporal pode ser ajustado. Um ganho de previsão linear (L9) pode ser determinado com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP. O ganho de LP pode ser associado a um nível de energia de um filtro de síntese de LP. A ordem de LP pode ser reduzida se o ganho de LP satisfizer um segundo limiar.

Description

REIVINDICAÇÃO DE PRIORIDADE
[0001] O presente pedido reivindica a prioridade do Pedido de Patente Provisório no U.S. 62/017.790, depositado em 26 de junho de 2014, e do Pedido de Patente no U.S. 14/731.198, depositado em 4 de junho de 2015, ambos intitulados “TEMPORAL GAIN ADJUSTMENT BASED ON HIGH-BAND SIGNAL CHARACTERISTIC”, cujos conteúdos são incorporados ao presente documento a título de referência em sua totalidade.
CAMPO
[0002] A presente revelação refere-se, em geral, a processamento de sinal.
DESCRIÇÃO DA TÉCNICA RELACIONADA
[0003] Os avanços em tecnologia resultaram em dispositivos de computação menores e mais potentes. Por exemplo, atualmente, há uma variedade de dispositivos de computação pessoais portáteis, incluindo dispositivos de computação sem fio, como telefones sem fio portáteis, assistentes pessoais digitais (PDAs) e dispositivos de chamada que são pequenos, leves e facilmente transportados por usuários. Os telefones sem fio portáteis mais específicos, como telefones celulares e telefones com Protocolo de Internet (IP), podem comunicar pacotes de voz e dados através de redes sem fio. Adicionalmente, muitos tais telefones sem fio incluem outros tipos de dispositivos que são incorporados aos mesmos. Por exemplo, um telefone sem fio também pode incluir uma câmera fotográfica digital, uma câmera de vídeo digital, um gravador digital e um reprodutor de arquivo de áudio.
[0004] A transmissão de voz por técnicas digitais é difundida, particularmente em aplicações de telefone de rádio digital e longa distância. Pode haver um interesse em determinar a menor quantidade de informações que podem ser enviadas através de um canal enquanto mantém uma qualidade percebida de discurso reconstruído. Se o discurso for transmitido por amostragem e digitalização, uma taxa de dados da ordem de sessenta e quatro quilobites por segundo (kbps) pode ser usada para alcançar uma qualidade de discurso de um telefone analógico. Através do uso de análise de discurso, seguido por codificação, transmissão e nova síntese em um receptor, uma redução significante na taxa de dados pode ser alcançada.
[0005] Os dispositivos para compactar discurso podem encontrar uso em muitos campos de telecomunicações. Um campo exemplificativo é comunicações sem fio. O campo de comunicações sem fio tem muitas aplicações incluindo, por exemplo, telefones sem cabo, paginação, circuitos locais sem fio, telefonia sem fio como sistemas de telefone de serviço de comunicação pessoal e de celular (PCS), telefonia de Protocolo de Internet (IP) móvel e sistemas de comunicação por satélite. Uma aplicação particular é telefonia sem fio para assinantes móveis.
[0006] Diversas interfaces suspensas foram desenvolvidas para sistemas de comunicação sem fio incluindo, por exemplo, acesso múltiplo por divisão de frequência (FDMA), acesso múltiplo por divisão de tempo (TDMA), acesso múltiplo por divisão de código (CDMA), e CDMA síncrono por divisão de tempo (TD-SCDMA). Em conexão com isso, diversos padrões domésticos e internacionais foram estabelecidos incluindo, por exemplo, Serviço de Telefone Móvel Avançado (AMPS), Sistema Global para Comunicações Móveis (GSM) e Padrão Interim 95 (IS-95). Um sistema de comunicação de telefonia sem fio exemplificativo é um sistema de acesso múltiplo por divisão de código (CDMA). O padrão IS-95 e seus derivativos, IS-95A, ANSI J- STD-008 e IS-95B (referenciados coletivamente no presente documento como IS-95), são promulgados pela Associação de Indústria de Telecomunicação (TIA) e outros órgãos de normalização bem conhecidos para especificar o uso de uma interface suspensa de CDMA para sistemas de comunicação de telefonia de PCS ou celular.
[0007] O padrão IS-95 subsequentemente envolvido em sistemas “3G”, como cdma2000 e WCDMA, que fornecem mais capacidade e serviços de dados de pacote de velocidade alta. Duas variações de cdma2000 são apresentadas pelos documentos IS-2000 (cdma2000 lxRTT) e IS-856 (cdma2000 lxEV-DO), que são emitidas por TIA. O sistema de comunicação cdma2000 lxRTT oferece uma taxa de dados de pico de 153 kbps enquanto que o sistema de comunicação cdma2000 lxEV-DO define um conjunto de taxa de dados, que está na faixa de 38,4 kbps a 2,4 Mbps. O padrão WCDMA é incorporado em Projeto de Parceira de 3a Geração “3 GPP”, documentos nos 3G TS 25.211, 3G TS 25.212, 3G TS 25.213, e 3G TS 25.214. A especificação de Telecomunicações Móveis Internacionais Avançadas (IMT Avançado) definem padrões “4G”. A especificação de IMT avançado definem a taxa de dados de pico para serviço de 4G em 100 megabits por segundo (Mbit/s) para comunicação de mobilidade alta (por exemplo, de trens e carros) e 1 gigabit por segundo (Gbit/s) para comunicação de mobilidade baixa (por exemplo, de pedestres e usuários estacionários).
[0008] Os dispositivos que empregam técnicas para compactar discurso extraindo-se parâmetros que se referem a um modelo de geração de discurso humano são chamados codificadores de discurso. Os codificadores de discurso podem compreender um encriptador e um decodificador. O encriptador divide o sinal de discurso recebido em blocos de tempo ou quadros de análise. A duração de cada segmento no tempo (ou “quadro”) pode ser selecionado para ser curto o suficiente de modo que possa ser esperado que o envelope espectral do sinal permaneça relativamente estacionário. Por exemplo, um comprimento de quadro é vinte milissegundos, que corresponde a 160 amostras em uma taxa de amostragem de oito quilohertz (kHz), embora qualquer comprimento de quadro ou taxa de amostragem considerados adequados para a aplicação particular possam ser usados.
[0009] O encriptador analisa o quadro de discurso recebido para extrair determinados parâmetros relevantes e, então, quantiza os parâmetros em representação binária, por exemplo, para um conjunto de bits ou um pacote de dados binário. Os pacotes de dados são transmitidos através de um canal de comunicação (isto é, uma conexão de rede com fio e/ou sem fio) para um receptor e um decodificador. O decodificador processa o pacote de dados, desquantiza o pacote de dados processado para produzir os parâmetros e sintetiza novamente os quadros de discurso com o uso dos parâmetros não quantizados.
[0010] A função do codificador de discurso é para compactar o sinal de discurso digitalizado em um sinal de taxa de bit baixa removendo-se redundâncias naturais inerentes ao discurso. A compactação digital pode ser alcançada representando-se um quadro de discurso de entrada com um conjunto de parâmetros e que emprega quantização para representar os parâmetros com um conjunto de bits. Se o quadro de discurso de entrada tiver um número de bits Ni e um pacote de dados produzido pelo codificador de discurso tiverem um número de bits No, o fator de compactação alcançado pelo codificador de discurso é Cr = Ni/No. O desafio é reter qualidade de voz alta do discurso decodificado enquanto alcança o fator-alvo de compactação. O desempenho de um codificador de discurso depende de (1) quão bem o modelo de discurso, ou a combinação do processo de análise e síntese descrito acima, é realizado, e (2) quão bem o processo de quantização de parâmetro é realizado na taxa-alvo de bits de No bits por quadro. O objetivo do modelo de discurso é, desse modo, capturar a essência do sinal de discurso, ou a qualidade de voz-alto, com um conjunto pequeno de parâmetros para cada quadro.
[0011] Os codificadores de discurso, em geral, utilizam um conjunto de parâmetros (incluindo vetores) para descrever o sinal de discurso. Um bom conjunto de parâmetros idealmente fornece uma largura de banda de sistema baixa para a reconstrução de um sinal de discurso perceptualmente preciso. Densidade, potência de sinal, envelope espectral (ou formantes), amplitude e espectros de fase são exemplos dos parâmetros de codificação de discurso.
[0012] Os codificadores de discurso podem ser implantados como codificadores de domínio de tempo, que tentam capturar a forma de onda de discurso de domínio de tempo empregando-se processamento de resolução de tempo alta para criptar segmentos pequenos de discurso (por exemplo, subquadros de 5 milissegundos (ms)) em um momento. Para cada subquadro, uma representatividade de precisão alta de um espaço de livro de códigos é revelada por meio de um algoritmo de busca. De modo alternativo, os codificadores de discurso podem ser implantados como codificadores de domínio de frequência, que tentam capturar o espectro de discurso de prazo curto do quadro de discurso de entrada com um conjunto de parâmetros (análise) e empregam um processo de síntese correspondente para recriar a forma de onda de discurso dos parâmetros espectrais. O quantizador de parâmetro preserva os parâmetros representando-se os mesmos com representações armazenadas de vetores de código de acordo com técnicas de quantização conhecidas.
[0013] Um codificador de discurso de domínio de tempo é o codificador Preditivo Linear Excitado de Código (CELP). Em um codificador de CELP, as correlações de prazo curto, ou redundâncias, no sinal de discurso são removidas por uma análise de previsão linear (LP), que revela os coeficientes de um filtro de formante de prazo curto. Aplicar o filtro de previsão de prazo curto ao quadro de discurso recebido gera um sinal de resíduo de LP, que é adicionalmente modelado e quantizado com parâmetros de filtro de previsão de prazo longo e um livro de códigos estocástico subsequente. Desse modo, a codificação de CELP divide a tarefa de criptar a forma de onda de discurso de domínio de tempo nas tarefas separadas de criptar os coeficientes de LP de filtro de prazo curto e criptar o resíduo de LP. A codificação de domínio de tempo pode ser realizada em uma taxa fixa (isto é, com o uso do mesmo número de bits, No, para cada quadro) ou em uma taxa variável (na qual taxas de bit diferentes são usadas para tipos diferentes de conteúdos de quadro). Os codificadores de taxa variável tentam usar a quantidade de bits necessária para criptar os parâmetros de codec para um nível adequado para obter uma qualidade-alvo.
[0014] Os codificadores de domínio de tempo como o codificador de CELP podem depender de um número alto de bits, NO, por quadro para preservar a precisão da forma de onda de discurso de domínio de tempo. Tais codificadores podem entregar qualidade de voz excelente desde que o número de bits, No, por quadro seja relativamente maior (por exemplo, 8 kbps ou acima). Em taxas de bit baixas (por exemplo, 4 kbps e abaixo), codificadores de domínio de tempo podem falhar em reter qualidade alta e desempenho robusto devido ao número limitado de bits disponíveis. Em taxas de bit baixas, o espaço de livro de códigos limitado recorta a capacidade de correspondência de forma de onda de codificadores de domínio de tempo, que são empregados em aplicações comerciais de taxa maior. Consequentemente, independente de aprimoramentos ao longo do tempo, muitos sistemas de codificação de CELP que operam em taxas de bit baixas sofrem de distorção perceptualmente significativa distinguida como ruído.
[0015] Uma alternativa para codificadores de CELP em taxas de bit baixas é o codificador “Preditivo Linear Excitado por Ruído” (NELP), que opera sob princípios similares como um codificador de CELP. Os codificadores de NELP usam um sinal de ruído pseudoaleatório filtrado para modelar o discurso, em vez de um livro de códigos. Visto que o NELP usa um modelo mais simples para discurso codificado, NELP alcança uma taxa de bit inferior a CELP. NELP pode ser usado para compactar ou representar discurso não falado ou silêncio.
[0016] Os sistemas de codificação que operam em taxas da ordem de 2.4 kbps são, em geral, paramétricos por natureza. Ou seja, tais sistemas de codificação operam transmitindo-se parâmetros que descrevem o período de densidade e o envelope espectral (ou formantes) do sinal de discurso em intervalos regulares. Ilustrativo desses codificadores chamados paramétricos é o sistema de vocodificador de LP.
[0017] Os vocodificadores de LP modelam um sinal com voz de discurso com um único pulso por período de densidade. Essa técnica básica pode ser aumentada para incluir informações de transmissão sobre o envelope espectral, dentre outras coisas. Embora os vocodificadores de LP forneçam desempenho razoável, em geral, os mesmos podem introduzir distorção perceptualmente significativa, distinguida como zumbido.
[0018] Nos últimos anos, emergiram codificadores que são híbridos tanto de codificadores de forma de onda quanto de codificadores paramétricos. Ilustrativo desses chamados codificadores híbridos é o sistema de codificação de discurso de interpolação de forma de onda de protótipo (PWI). O sistema de codificação de PWI também pode ser conhecido como um codificador de discurso de período de densidade de protótipo (PPP). Um sistema de codificação de PWI fornece um método eficaz para codificação de discurso com voz. O conceito básico de PWI é para extrair um ciclo de densidade representativo (a forma de onda de protótipo) em intervalos fixos, para transmitir sua descrição e para reconstruir o sinal de discurso interpolando-se entre as formas de onda de protótipo. O método de PWI pode operar ou no sinal residual de LP ou no sinal de discurso.
[0019] Pode haver interesse de busca e interesse comercial ao aprimorar qualidade de áudio de um sinal de discurso (por exemplo, um sinal de discurso codificado, um sinal de discurso reconstruído ou ambos). Por exemplo, um dispositivo de comunicação pode receber um sinal de discurso com qualidade de voz menor que o ideal. Para ilustrar, o dispositivo de comunicação pode receber o sinal de discurso de outro dispositivo de comunicação durante uma chamada de voz. A qualidade de chamada de voz pode sofrer devido a diversas razões, como ruído do ambiente (por exemplo, vento, ruído da rua), limitações das interfaces dos dispositivos de comunicação, processamento de sinal pelos dispositivos de comunicação, perda de pacote, limitações de largura de banda, limitações de taxa de bit, etc.
[0020] Em sistemas de telefone tradicionais (por exemplo, redes de telefone comutadas públicas (PSTNs)), largura de banda de sinal é limitada à faixa de frequência de 300 Hertz (Hz) a 3,4 quilohertz (kHz). Em aplicações de banda larga (WB), como telefonia de celular e voz através de protocolo de internet (VoIP), a largura de banda de sinal pode abranger a faixa de frequência de 50 Hz para 7 kHz. As técnicas de codificação de superlargura de banda (SWB) suportam largura de banda que se estende até cerca de 16 kHz. Estender a largura de banda de sinal de telefonia de banda estreita a 3.4 kHz para telefonia de SWB de 16 kHz pode aprimorar a qualidade de reconstrução de sinal, intelegibilidade e naturalidade.
[0021] As técnicas de codificação de SWB envolvem tipicamente criptar e transmitir a porção de frequência anterior do sinal (por exemplo, 0 Hz a 6,4 kHz, também chamada de “banda baixa”). Por exemplo, a banda baixa pode ser representada com o uso de parâmetros de filtro e/ou um sinal de excitação de banda baixa. No entanto, a fim de aprimorar eficácia de codificação, a porção de frequência mais alta do sinal (por exemplo, 6,4 kHz a 16 kHz, também chamada de “banda alta”) pode não ser completamente criptada e transmitida. Em vez disso, um receptor pode utilizar modelagem de sinal para prever a banda alta. Em algumas implantações, dados associados à banda alta podem ser fornecidos para o receptor para auxiliar na previsão. Tais dados podem ser referenciados como “informações secundárias” e podem incluir informações de ganho, frequências espectrais em linha (LSFs, também referenciadas como pares espectrais de linha (LSPs)), etc. Ao criptar e decodificar um sinal de banda alta com o uso de modelagem de sinal, ruído indesejado ou artefatos audíveis podem ser introduzidos ao sinal de banda alta mediante determinadas condições.
SUMÁRIO
[0022] Em um aspecto particular, um método inclui determinar, em um encriptador, se uma característica de sinal de uma faixa de frequência superior de uma porção de banda alta de um sinal de áudio de entrada satisfaz um limiar. O método também inclui gerar um sinal de excitação de banda alta que corresponde à porção de banda alta, gerar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta e determinar um valor de um parâmetro de ganho temporal com base em uma comparação da porção de banda alta sintetizada com a porção de banda alta. O método inclui adicionalmente, em resposta à característica de sinal satisfazer o limiar, ajustar o valor do parâmetro de ganho temporal. Ajustar o valor do parâmetro de ganho temporal controla uma variabilidade do parâmetro de ganho temporal.
[0023] Em outro aspecto particular, um aparelho inclui um módulo de pré-processamento configurado para filtrar pelo menos uma porção de um sinal de áudio de entrada para gerar uma pluralidade de saídas. O aparelho também inclui um primeiro filtro configurado para determinar uma característica de sinal de uma faixa de frequência superior de uma porção de banda alta do sinal de áudio de entrada. O aparelho inclui adicionalmente um gerador de excitação de banda alta configurado para gerar um sinal de excitação de banda alta que corresponde à porção de banda alta e um segundo filtro configurado para gerar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta. O aparelho inclui um estimador de envelope temporal configurado para determinar um valor de um parâmetro de ganho temporal com base em uma comparação da porção de banda alta sintetizada com a porção de banda alta e, em resposta à característica de sinal satisfazer um limiar, ajustar o valor do parâmetro de ganho temporal. Ajustar o valor do parâmetro de ganho temporal controla uma variabilidade do parâmetro de ganho temporal.
[0024] Em outro aspecto particular, um meio legível por processador não transitório inclui instruções que, quando executadas por um processador, fazem com que o processador realize operações incluindo determinar se uma característica de sinal de uma faixa de frequência superior de uma porção de banda alta de um sinal de áudio de entrada satisfaz um limiar. As operações também incluem gerar um sinal de excitação de banda alta que corresponde à porção de banda alta, gerar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta e determinar um valor de um parâmetro de ganho temporal com base em uma comparação da porção de banda alta sintetizada com a porção de banda alta. As operações incluem adicionalmente, em resposta à característica de sinal satisfazer o limiar, ajustar o valor do parâmetro de ganho temporal. Ajustar o valor do parâmetro de ganho temporal controla uma variabilidade do parâmetro de ganho temporal.
[0025] Em outro aspecto particular, um aparelho inclui meios para filtrar pelo menos uma porção de um sinal de áudio de entrada para gerar uma pluralidade de saídas. O aparelho também inclui meios para determinar, com base na pluralidade de saídas, se uma característica de sinal de uma faixa de frequência superior de uma porção de banda alta do sinal de áudio de entrada satisfaz um limiar. O aparelho inclui adicionalmente meios para gerar um sinal de excitação de banda alta que corresponde à porção de banda alta, meios para sintetizar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta, e meios para estimar um envelope temporal da porção de banda alta. Os meios para estimar são configurados para determinar um valor de um parâmetro de ganho temporal com base em uma comparação da porção de banda alta sintetizada com a porção de banda alta, e, em resposta à característica de sinal satisfazer o limiar, ajustar o valor do parâmetro de ganho temporal. Ajustar o valor do parâmetro de ganho temporal controla uma variabilidade do parâmetro de ganho temporal.
[0026] Em outro aspecto particular, um método para ajustar coeficientes de previsão linear (LPCs) de um encriptador inclui determinar, no encriptador, um ganho de previsão linear (L9) com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP. O ganho de LP é associado a um nível de energia de um filtro de síntese de LP. O método também inclui comparar o ganho de LP a um limiar e reduzir a ordem de LP do primeiro valor para um segundo valor se o ganho de LP satisfizer o limiar.
[0027] Em outro aspecto particular, um aparelho inclui um encriptador e instruções de armazenamento de memória que são executáveis pelo encriptador para realizar operações. As operações incluem determinar um ganho de previsão linear (L9) com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP. O ganho de LP é associado a um nível de energia de um filtro de síntese de LP. As operações também incluem comparar o ganho de LP a um limiar e reduzir a ordem de LP do primeiro valor para um segundo valor se o ganho de LP satisfizer o limiar.
[0028] Em outro aspecto particular, um meio legível por computador não transitório inclui instruções para ajustar coeficientes de previsão linear (LPCs) de um encriptador. As instruções, quando executadas pelo encriptador, fazem com que o encriptador realize operações.As operações incluem determinar um ganho de previsão linear (L9) com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP. O ganho de LP é associado a um nível de energia de um filtro de síntese de LP. As operações também incluem comparar o ganho de LP a um limiar e reduzir a ordem de LP do primeiro valor para um segundo valor se o ganho de LP satisfizer o limiar.
[0029] Em outro aspecto particular, um aparelho inclui meios para determinar um ganho de previsão linear (L9) com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP. O ganho de LP é associado a um nível de energia de um filtro de síntese de LP. O aparelho também inclui meios para comparar o ganho de LP a um limiar e meios para reduzir a ordem de LP do primeiro valor para um segundo valor se o ganho de LP satisfizer o limiar.
BREVE DESCRIÇÃO DOS DESENHOS
[0030] A Figura 1 é um diagrama para ilustrar um aspecto particular de um sistema que é operável para ajustar um parâmetro de ganho temporal com base em uma característica de sinal de banda alta;
[0031] A Figura 2 é um diagrama para ilustrar um aspecto particular de componentes de um encriptador operável para ajustar um parâmetro de ganho temporal com base em uma característica de sinal de banda alta;
[0032] A Figura 3 inclui diagramas que ilustram componentes de frequência de sinais de acordo com um aspecto particular;
[0033] A Figura 4 é um diagrama para ilustrar um aspecto particular de componentes de um decodificador operável para sintetizar uma porção de banda alta de um sinal de áudio com o uso de parâmetros de ganho temporal que são ajustados com base em uma característica de sinal de banda alta;
[0034] A Figura 5A representa um fluxograma para ilustrar um aspecto particular de um método para ajustar um parâmetro de ganho temporal com base em uma característica de sinal de banda alta;
[0035] A Figura 5B representa um fluxograma para ilustrar um aspecto particular de um método para calcular uma característica de sinal de banda alta;
[0036] A Figura 5C representa um fluxograma para ilustrar um aspecto particular de método para ajustar coeficientes de previsão linear (LPCs) de um encriptador; e
[0037] A Figura 6 é um diagrama de blocos de um dispositivo sem fio operável para realizar operações de processamento de sinal de acordo com os sistemas, aparelhos e métodos das Figuras 1 a 5B.
DESCRIÇÃO DETALHADA
[0038] Os sistemas e métodos para ajustar informações de ganho temporais com base em uma característica de sinal de banda alta são revelados. Por exemplo, as informações de ganho temporais podem incluir um parâmetro de formato de ganho que é gerado em um encriptador em uma base por subquadro. Em determinas situações, um sinal de áudio inserido no encriptador pode ter pouco ou nenhum conteúdo na banda alta (por exemplo, pode ser “limitado por banda” em relação à banda alta). Por exemplo, um sinal limitado por banda pode ser gerado durante captura de áudio em um dispositivo eletrônico que é compatível com o modelo de SWB, um dispositivo que não tem capacidade para capturar dados através de um totalidade da banda alta, etc. Para ilustrar, um telefone sem fio particular pode não ter capacidade, ou pode não ser programado para se abster de capturar, dados em frequências maiores que 8 kHz, maiores que 10 kHz, etc. Quando cripta tais sinais limitados por banda, um modelo de sinal (por exemplo, um modelo harmônico de SWB) pode introduzir artefatos audíveis devido a uma grande variação em ganho temporal.
[0039] Para reduzir tais artefatos, um encriptador (por exemplo, um encriptador de discurso ou “vocodificador”) pode determinar uma característica de sinal de um sinal de áudio que deve ser criptado. Em um exemplo, a característica de sinal é uma soma de energias em uma região de frequência superior da porção de banda alta do sinal de áudio. Como um exemplo não limitante, a característica de sinal pode ser determinada somando-se energias de banco de filtro de análise emitidas em uma faixa de frequências de 12 kHz a 16 kHz e pode, desse modo, corresponder a uma “planta de sinal” de banda alta. Conforme usado no presente documento, a “região de frequência superior” da porção de banda alta do sinal de áudio pode corresponder a qualquer faixa de frequência (na porção superior de porção de banda alta do sinal de áudio) que é menor que a largura de banda da porção de banda alta do sinal de áudio. Como um exemplo não limitante, se a porção de banda alta do sinal de áudio for distinguida por uma faixa de frequência de 6,4 kHz a 14,4 kHz, a região de frequência superior da porção de banda alta do sinal de áudio pode ser distinguida por uma faixa de frequência de 10,6 kHz a 14,4 kHz. Como outro exemplo não limitante, se a porção de banda alta do sinal de áudio for distinguida por uma faixa de frequência de 8 kHz a 16 kHz, a região de frequência superior da porção de banda alta do sinal de áudio pode ser distinguida por uma faixa de frequência de 13 kHz a -16 kHz. O encriptador pode processar a porção de banda alta do sinal de áudio para gerar um sinal de excitação de banda alta e pode gerar uma versão sintetizada da porção de banda alta com base no sinal de excitação de banda alta. Com base em uma comparação das porções de banda alta sintetizada e “original”, o encriptador pode determinar um valor de um parâmetro de formato de ganho. Se a característica de sinal da porção de banda alta satisfizer um limiar (por exemplo, a característica de sinal indica que o sinal de áudio é limitado por banda e tem pouco ou nenhum conteúdo de banda alta), o encriptador pode ajustar o valor do parâmetro de formato de ganho para limitar variabilidade (por exemplo, uma faixa dinâmica limitada) do parâmetro de formato de ganho. Limitar a variabilidade do parâmetro de formato de ganho pode reduzir artefatos gerados durante a criptação/decodificação do sinal limitado por banda de áudio.
[0040] Com referência à Figura 1, um aspecto particular de um sistema que é operável para ajustar um parâmetro de ganho temporal com base em uma característica de sinal de banda alta é mostrado e, em geral, designado como 100. Em um aspecto particular, o sistema 100 pode ser integrado a um sistema ou aparelho de criptação (por exemplo, em um telefone sem fio ou codificador/decodificador (CODEC)).
[0041] Deve ser verificado que na descrição a seguir, diversas funções realizadas pelo sistema 100 da Figura 1 são descritos como sendo realizados por determinados componentes ou módulos. No entanto, essa divisão de componentes e módulos é apenas para ilustração. Em um aspecto alternativo, uma função realizada por um componente ou módulo particular pode, em vez disso, ser dividida dentre múltiplos componentes ou módulos. Além disso, em um aspecto alternativo, dois ou mais componentes ou módulos da Figura 1 podem ser integrados a um único componente ou módulo. Cada componente ou módulo ilustrado na Figura 1 pode ser implantado com o uso de hardware (por exemplo, um dispositivo de arranjo de portas programáveis por campo (FPGA), um circuito integrado específico de aplicação (ASIC), um processador de sinal digital (DSP), um controlador, etc.), software (por exemplo, instruções executáveis por um processador) ou qualquer combinação dos mesmos.
[0042] O sistema 100 inclui um módulo de pré- processamento 110 que é configurado para receber um sinal de áudio 102. Por exemplo, o sinal de áudio 102 pode ser fornecido por um microfone ou outro dispositivo de entrada. Em um aspecto particular, o sinal de áudio 102 pode incluir discurso. O sinal de áudio 102 pode ser um sinal de superbanda larga (SWB) que inclui dados na faixa de frequência de aproximadamente 50 hertz (Hz) a aproximadamente 16 quilohertz (kHz). O módulo de pré- processamento 110 pode filtrar o sinal de áudio 102 em múltiplas porções com base em frequência. Por exemplo, o módulo de pré-processamento 110 pode gerar um sinal de banda baixa 122 e um sinal de banda alta 124. O sinal de banda baixa 122 e o sinal de banda alta 124 podem ter larguras de banda iguais ou diferentes, e podem ser sobrepostas ou não sobrepostas.
[0043] Em um aspecto particular, o sinal de banda baixa 122 e o sinal de banda alta 124 correspondem aos dados em bandas de frequência não sobrepostas. Por exemplo, o sinal de banda baixa 122 e o sinal de banda alta 124 podem corresponder aos dados em bandas de frequência não sobrepostas de 50 Hz a 7 kHz e 7 kHz a 16 kHz. Em um aspecto alternativo, o sinal de banda baixa 122 e o sinal de banda alta 124 podem corresponder às bandas de frequência não sobrepostas de dados de 50 Hz a 8 kHz e 8 kHz a 16 kHz. Em um outro aspecto alternativo, o sinal de banda baixa 122 e o sinal de banda alta 124 correspondem a bandas sobrepostas (por exemplo, 50 Hz a 8 kHz e 7 kHz a 16 kHz), que pode possibilitar que um filtro passa baixo e um filtro passa alto do módulo de pré-processamento 110 tenham uma transmissão suave, que pode simplificar o projeto e reduzir os custos do filtro passa baixo e do filtro passa alto. A sobreposição do sinal de banda baixa 122 e do sinal de banda alta 124 também pode possibilitar mistura suave de sinais de banda baixa e banda alta em um receptor, o que pode resultar em menos artefatos audíveis.
[0044] Em um aspecto particular, o módulo de pré-processamento 110 inclui um banco de filtro de análise. Por exemplo, o módulo de pré-processamento 110 pode incluir um banco de filtro de filtro de espelho de quadratura (QMF) que inclui uma pluralidade de QMFs. Cada QMF pode filtrar uma porção do sinal de áudio 102. Como outro exemplo, o módulo de pré-processamento 110 pode incluir um banco de filtro de atraso baixo complexo (CLDFB). O módulo de pré- processamento 110 também pode incluir um inversor espectral configurado para inverter um espectro do sinal de áudio 102. Desse modo, em um aspecto particular, embora o sinal de banda alta 124 corresponda a uma porção de banda alta do sinal de áudio 102, o sinal de banda alta 124 pode ser comunicado como um sinal de banda de base.
[0045] Em um aspecto particular de SWB, o banco de filtro inclui 40 filtros de QMF, em que cada filtro de QMF (por exemplo, um filtro de QMF ilustrativo 112) opera em uma porção de 400 Hz do sinal de áudio 102. Cada filtro de QMF 112 pode gerar saídas de filtro que incluem uma parte real e uma parte imaginária. O módulo de pré-processamento 110 pode somar saídas de filtro de filtros de QMF que correspondem a uma porção de frequência superior da porção de banda alta do sinal de áudio 102. Por exemplo, o módulo de pré-processamento 110 pode somar saídas dos dez QMFs que correspondem à faixa de frequência de 12 kHz a 16 kHz, que são mostradas na Figura 1 com o uso de um padrão de sombreamento. O módulo de pré-processamento 110 pode determinar uma característica de sinal de banda alta 126 com base nas saídas de QMF somadas. Em um aspecto particular, o módulo de pré-processamento 110 realiza uma operação de média a longo prazo nas saídas de soma de QMF para determinar a característica de sinal de banda alta 126. Para ilustrar, o módulo de pré-processamento 110 pode operar de acordo com o pseudocódigo a seguir: //CLDFB_NO_COL_MAX = 16; //nB: number de bands //ts: number de samples per band //realBufferFlipped: QMF analysis filter output (real) //imagBufferFlipped: QMF analysis filter output (imaginary) //qmfHBLT: long-term average de high-band signal floor //Estimate high-band signal floor float QmfHB = 0; /*iterate over ten bands = 10*400 Hz = 4 kHz corresponding to 12-16kHz data. QMFs 0-9 used because operating in flipped signal domain, so upper frequencies of high-band processed by the lowest number QMFs*/ for (nB = 0; nB < 10; nB++) { for (ts = 0; ts < CLDFB_NO_COL_MAX; ts++) //iterate over samples in each band { /*sum the squares of real/imaginary buffer outputs (which correspond to magnitude/signal energy */ QmfHB += (realBufferFlipped[ts][nB] * realBufferFlipped[ts][nB]) + (imagBufferFlipped[ts][nB] * imagBufferFlipped[ts][nB]); } } /* perform long-term averageing of high-band signal floor in log domain 0.221462 = l/logl0(32768) /* qmfHBLT = 0.9 * qmfHBLT + 0.1 * (0.221462 * (loglO(QmfHB) - 1.0));
[0046] Embora o pseudocódigo ilustre ponderação a longo prazo através das dez bandas (por exemplo, dez bandas de 400 Hz que representam dados de 12 a 16 kHz) com o uso de bancos de filtro de análise de QMF, deve ser verificado que o módulo de pré-processamento 110 pode operar de acordo com pseudocódigo substancialmente similar para bancos de filtro de análise diferentes, um número diferente de bandas e/ou uma faixa de frequência de dados diferente. Como um exemplo não limitante, o módulo de pré-processamento 110 pode utilizar bancos de filtro de análise de atraso baixo complexos para 20 bandas que representam dados de 13 a 16 kHz.
[0047] Em um aspecto particular, a característica de sinal de banda alta 126 é determinada em uma base por subquadro. Para ilustrar, o sinal de áudio 102 pode ser dividido em uma pluralidade de quadros, em que cada quadro corresponde a aproximadamente 20 milissegundos (ms) de áudio. Cada quadro pode incluir uma pluralidade de subquadros. Por exemplo, cada 20 ms de quadro pode incluir quatro 5 ms (ou aproximadamente 5 ms) de subquadros. Em aspectos alternativos, quadros e subquadros podem corresponder a comprimentos diferentes de tempo e um número diferente de subquadros pode ser incluído em cada quadro.
[0048] Deve ser verificado que embora o exemplo da Figura 1 ilustre processamento de um sinal de SWB, isso é apenas para ilustração. Em um aspecto alternativo, o sinal de áudio 102 pode ser um sinal de banda larga (WB) que tem uma faixa de frequência de aproximadamente 50 Hz a aproximadamente 8 kHz. Em tal aspecto, o sinal de banda baixa 122 pode corresponder a uma faixa de frequência de aproximadamente 50 Hz a aproximadamente 6,4 kHz e o sinal de banda alta 124 pode corresponder a uma faixa de frequência de aproximadamente 6,4 kHz a aproximadamente 8 kHz.
[0049] O sistema 100 pode incluir um módulo de análise de banda baixa 130 configurado para receber o sinal de banda baixa 122. Em um aspecto particular, o módulo de análise de banda baixa 130 pode representar um aspecto de um encriptador de previsão linear excitada por código (CELP). O módulo de análise de banda baixa 130 pode incluir um módulo de análise de previsão linear (LP) e codificação 132, um linear módulo de transformação de coeficiente de previsão (LPC) para par espectral de linha (LSP) 134 e um quantizador 136. LSPs também pode ser referenciado como frequências espectrais em linha (LSFs), e os dois termos podem ser usados de modo intercambiável no presente documento. O módulo de análise e codificação de LP 132 pode criptar um envelope espectral do sinal de banda baixa 122 como um conjunto de LPCs. LPCs podem ser gerados para cada quadro de áudio (por exemplo, 20 milissegundos (ms) de áudio, que corresponde a 320 amostras em uma taxa de amostragem de 16 kHz), cada subquadro de áudio (por exemplo, 5 ms de áudio) ou qualquer combinação dos mesmos. O número de LPCs gerados para cada quadro ou subquadro pode ser determinado pela “ordem” da análise de LP realizada. Em um aspecto particular, o módulo de análise e codificação de LP 132 pode gerar um conjunto de onze LPCs que correspondem a uma análise de LP de ordem de dez.
[0050] O módulo de transformação de LPC para LSP 134 pode transformar o conjunto de LPCs gerados pelo módulo de análise e codificação de LP 132 em um conjunto correspondente de LSPs (por exemplo, com o uso de uma transformação de um para um). De modo alternativo, o conjunto de LPCs pode ser um para um transformado em um conjunto correspondente de coeficientes PARCOR, valores de razão de log para área, pares espectrais de imitância (ISPs) ou frequências espectrais de imitância (ISFs). A transformação entre o conjunto de LPCs e o conjunto de LSPs pode ser reversível sem erro.
[0051] O quantizador 136 pode quantizar o conjunto de LSPs gerados pelo módulo de transformação 134. Por exemplo, o quantizador 136 pode incluir ou ser acoplado a múltiplos livros de códigos que incluem múltiplas entradas (por exemplo, vetores). Para quantizar o conjunto de LSPs, o quantizador 136 pode identificar entradas de livros de códigos que estão “mais próximas a” (por exemplo, com base em uma medição de distorção como erro de quadrado mínimo ou de quadrado médio) o conjunto de LSPs. O quantizador 136 pode emitir um valor de índice ou séries de valores de índice que correspondem à localização das entradas identificadas no livro de códigos. A saída do quantizador 136 pode, desse modo, representar parâmetros de filtro de banda baixa que são incluídos em um fluxo de bits de banda baixa 142.
[0052] O módulo de análise de banda baixa 130 também pode gerar um sinal de excitação de banda baixa 144. Por exemplo, o sinal de excitação de banda baixa 144 pode ser um sinal criptado que é gerado quantizando-se um sinal residual de LP que é gerado durante o processo de LP realizado pelo módulo de análise de banda baixa 130. O sinal residual de LP pode representar erro de previsão.
[0053] O sistema 100 pode incluir adicionalmente um módulo de análise de banda alta 150 configurado para receber o sinal de banda alta 124 e a característica de sinal de banda alta 126 do módulo de pré- processamento 110 e para receber o sinal de excitação de banda baixa 144 do módulo de análise de banda baixa 130. O módulo de análise de banda alta 150 pode gerar informações secundárias de banda alta (por exemplo, parâmetros) 172. Por exemplo, as informações secundárias de banda alta 172 podem incluir LSPs de banda alta, informações de ganho, etc.
[0054] O módulo de análise de banda alta 150 pode incluir um gerador de excitação de banda alta 160. O gerador de excitação de banda alta 160 pode gerar um sinal de excitação de banda alta 161 estendendo-se um espectro do sinal de excitação de banda baixa 144 na faixa de frequência de banda alta (por exemplo, 8 kHz a 16 kHz). Para ilustrar, o gerador de excitação de banda alta 160 pode aplicar uma transformação ao sinal de excitação de banda baixa (por exemplo, uma transformação não linear como um valor absoluto ou operação quadrada) e pode misturar o sinal de excitação de banda baixa transformado com um sinal de ruído (por exemplo, ruído branco modulado de acordo com um envelope que corresponde ao sinal de excitação de banda baixa 144 que imita características temporais variadas lentas do sinal de banda baixa 122) para gerar o sinal de excitação de banda alta 161.
[0055] O sinal de excitação de banda alta 161 pode ser usado para determinar um ou mais parâmetros de ganho de banda alta que são incluídos nas informações secundárias de banda alta 172. Conforme ilustrado, o módulo de análise de banda alta 150 também pode incluir um módulo de análise e codificação de LP 152, um módulo de transformação de LPC para LSP 154 e um quantizador 156. Cada um dentre o módulo de análise e codificação de LP 152, o módulo de transformação 154 e o quantizador 156 podem funcionar conforme descrito acima em referência a componentes correspondentes do módulo de análise de banda baixa 130, mas em uma resolução comparativamente reduzida (por exemplo, com o uso de poucos bits para cada coeficiente, LSP, etc.). O módulo de análise e codificação de LP 152 pode gerar um conjunto de LPCs que são transformados em LSPs pelo módulo de transformação 154 e quantizados pelo quantizador 156 com base em um livro de códigos 163. Por exemplo, o módulo de análise e codificação de LP 152, o módulo de transformação 154, e o quantizador 156 podem usar o sinal de banda alta 124 para determinar informações de filtro de banda alta (por exemplo, LSPs de banda alta) que são incluídas nas informações secundárias de banda alta 172. Em um aspecto particular, o módulo de análise de banda alta 150 pode incluir um decodificador local que usa coeficientes de filtro com base nos LPCs gerados pelo módulo de transformação 154 e que recebe o sinal de excitação de banda alta 161 como uma entrada. Uma saída de um filtro de síntese (por exemplo, o módulo de síntese 164) do decodificador local, como uma versão sintetizada do sinal de banda alta 124, pode ser comparado ao sinal de banda alta 124 e parâmetros de ganho (por exemplo, um ganho de quadro e/ou valores de conformação de ganho de envelope temporal) podem ser determinados, quantizados e incluídos nas informações secundárias de banda alta 172.
[0056] Em um aspecto particular, as informações secundárias de banda alta 172 podem incluir LSPs de banda alta, bem como parâmetros de ganho de banda alta. Por exemplo, as informações secundárias de banda alta 172 podem incluir um parâmetro de ganho temporal (por exemplo, um parâmetro de formato de ganho) que indica como um envelope espectral do sinal de banda alta 124 evolui ao longo do tempo. Por exemplo, um parâmetro de formato de ganho pode ter como base uma razão de energia normalizada entre uma porção de banda alta “original” e uma porção de banda alta sintetizada. O parâmetro de formato de ganho pode ser determinado e aplicado em uma base por subquadro. Em um aspecto particular, um segundo parâmetro de ganho também pode ser determinado e aplicado. Por exemplo, um parâmetro de “quadro de ganho” pode ser determinado e aplicado por todo o quadro, em que o parâmetro de quadro de ganho corresponde a uma razão de energia de banda alta para banda baixa para o quadro particular.
[0057] Por exemplo, o módulo de análise de banda alta 150 pode incluir um módulo de síntese 164 configurado para gerar uma versão sintetizada do sinal de banda alta 124 com base no sinal de excitação de banda alta 161. O módulo de análise de banda alta 150 também pode incluir um ajustador de ganho 162 que determina um valor do parâmetro de formato de ganho com base em uma comparação do sinal de banda alta “original” 124 e a versão sintetizada do sinal de banda alta gerado pelo módulo de síntese 164. Para ilustrar, para um quadro particular de áudio que inclui quatro subquadros, o sinal de banda alta 124 pode ter valores (por exemplo, amplitudes ou energias) de 10, 20, 30, 20 para os respectivos subquadros. A versão sintetizada do sinal de banda alta pode ter valores 10, 10, 10, 10. O ajustador de ganho 162 pode determinar valores do parâmetro de formato de ganho como 1, 2, 3, 2 para os respectivos subquadros. Em um decodificador, os valores de parâmetro de formato de ganho podem ser usados para conformar a versão sintetizada do sinal de banda alta para refletir de modo mais próximo o sinal de banda alta “original” 124. Em um aspecto particular, o ajustador de ganho 162 pode normalizar os valores de parâmetro de formato de ganho para valores entre 0 e 1. Por exemplo, os valores de parâmetro de formato de ganho podem ser normalizados para 0,33, 0,67, 1, 0,33.
[0058] Em um aspecto particular, o ajustador de ganho 162 pode ajustar um valor do parâmetro de formato de ganho com base em se a característica de sinal de banda alta 126 satisfaz um limiar 165. O limiar 165 pode ser fixado ou pode ser ajustável. A característica de sinal de banda alta 126 que satisfaz o limiar 165 pode indicar que o sinal de áudio 102 inclui menos que uma quantidade limiar de conteúdo de áudio na região de frequência superior (por exemplo, 12 kHz a 16 kHz) da porção de banda alta (por exemplo, 8 kHz a 16 kHz). Desse modo, a característica de sinal de banda alta pode ser determinada em um domínio de filtragem/análise (por exemplo, um domínio de QMF), em oposição a um domínio sintetizado. Quando o sinal de áudio 102 inclui pouco ou nenhum conteúdo na região de frequência superior da porção de banda alta, oscilações grandes em ganho podem ser criptadas pelo módulo de análise de banda alta 150, ocasionando artefatos audíveis em decodificação de sinal. Para reduzir tais artefatos, o ajustador de ganho 162 pode ajustar valor(es) de parâmetro de formato de ganho quando a característica de sinal de banda alta satisfaz o limiar 165. Ajustar o(s) valor(es) de parâmetro de formato de ganho pode limitar uma variabilidade (por exemplo, faixa dinâmica) do parâmetro de formato de ganho. Para ilustrar, o ajustador de ganho pode operar de acordo com o pseudocódigo a seguir: /* NUM_SHB_SUBGAINS = number of gain shape values per frame = 4 limit gain shape dynamic range if long-term high- band signal floor is less than threshold (normalized threshold of 1.0 is used in this example) */ if (qmfHBLT < 1.0) { for (i = 0; i < UM_SHB_SUBGAI S; i++) { /*gain shape value for each sub frame is limited to a normalized constant +/- 10% of gain shape value */ GainShape[i] = 0.315 + 0.1 *GainShape[i]; } }
[0059] Em um aspecto alternativo, o limiar 165 pode ser armazenado em ou disponível para o módulo de pré-processamento 110 e o módulo de pré-processamento 110 pode determinar se a característica de sinal de banda alta 126 satisfaz o limiar 165. Nesse aspecto, o módulo de pré- processamento 110 pode enviar o ajustador de ganho 162 um indicador (por exemplo, um bit). O indicador pode ter um primeiro valor (por exemplo, 1) quando a característica de sinal de banda alta 126 satisfaz o limiar 165 e pode ter um segundo valor (por exemplo, 0) quando a característica de sinal de banda alta 126 não satisfaz o limiar 165. O ajustador de ganho 162 pode ajustar valor(es) do parâmetro de formato de ganho com base em se o indicador tem o primeiro valor ou o segundo valor.
[0060] O fluxo de bits de banda baixa 142 e as informações secundárias de banda alta 172 podem ser multiplexados por um multiplexador (MUX) 180 para gerar um fluxo de bits de saída 192. O fluxo de bits de saída 192 pode representar um sinal de áudio criptado que corresponde ao sinal de áudio 102. Por exemplo, o fluxo de bits de saída 192 pode ser transmitido (por exemplo, através de um canal com fio, sem fio ou óptico) e/ou armazenado. Em um receptor, operações reversas podem ser realizadas por um demultiplexador (DEMUX), um decodificador de banda baixa, um decodificador de banda alta e um banco de filtro para gerar um sinal de áudio (por exemplo, uma versão reconstruída do sinal de áudio 102 que é fornecido para um alto-falante ou outro dispositivo de saída). O número de bits usados para representar o fluxo de bits de banda baixa 142 pode ser substancialmente maior que o número de bits usado para representar as informações secundárias de banda alta 172. Desse modo, a maior parte dos bits no fluxo de bits de saída 192 pode representar dados de banda baixa. As informações secundárias de banda alta 172 podem ser usadas em um receptor para regenerar o sinal de excitação de banda alta dos dados de banda baixa de acordo com um modelo de sinal. Por exemplo, o modelo de sinal pode representar um conjunto previsto de relações ou correlações entre dados de banda baixa (por exemplo, o sinal de banda baixa 122) e dados de banda alta (por exemplo, o sinal de banda alta 124). Desse modo, modelos de sinal diferentes podem ser usados para tipos diferentes de dados de áudio (por exemplo, discurso, música, etc.), e o modelo de sinal particular que está em uso pode ser negociado por um transmissor e um receptor (ou definido por um padrão industrial) antes da comunicação de dados de áudio criptados. Usar o modelo de sinal, o módulo de análise de banda alta 150 em um transmissor pode ter capacidade para gerar as informações secundárias de banda alta 172 de modo que um módulo de análise de banda alta correspondente em um receptor tenha capacidade para usar o modelo de sinal para reconstruir o sinal de banda alta 124 do fluxo de bits de saída 192.
[0061] Ajustando-se de modo seletivo as informações de ganho temporais (por exemplo, o parâmetro de formato de ganho) quando uma característica de sinal de banda alta satisfaz a limiar, o sistema 100 da Figura 1 pode reduzir artefatos audíveis quando um sinal que é criptado é limitado por banda (por exemplo, inclui pouco ou nenhum conteúdo de banda alta). O sistema 100 da Figura 1 pode, desse modo, possibilitar restrição de ganho temporal quando um sinal de entrada não adere a um modelo de sinal em uso.
[0062] Com referência à Figura 2, um aspecto particular de componentes usados em um encriptador 200 é mostrado. Em um aspecto ilustrativo, o encriptador 200 corresponde ao sistema 100 da Figura 1.
[0063] Um sinal de entrada 201 com largura de banda de “F” (por exemplo, um sinal que tem uma faixa de frequência de 0 Hz a F Hz, como 0 Hz a 16 kHz quando F = 16.000 = 16k) pode ser recebido pelo encriptador 200. Um filtro de análise 202 pode emitir uma porção de banda baixa do sinal de entrada 201. O sinal 203 emitido do filtro de análise 202 pode ter componentes de frequência de 0 Hz a F1 Hz (como 0 Hz a 6,4 kHz quando F1 = 6,4 k).
[0064] Um encriptador de banda baixa 204, como um encriptador de ACELP (por exemplo, o módulo de análise e codificação de LP 132 no módulo de análise de banda baixa 130 da Figura 1), pode criptar o sinal 203. O encriptador de ACELP 204 pode gerar informações de codificação, como LPCs e um sinal de excitação de banda baixa 205.
[0065] O sinal de excitação de banda baixa 205 do encriptador de ACELP (que também pode ser reproduzido por um decodificador de ACELP em um receptor, conforme descrito na Figura 4) pode ter resolução aumentada em um amostrador 206 de modo que a largura de banda efetiva de um sinal de resolução reduzida 207 esteja em uma faixa de frequência de 0 Hz a F Hz. O sinal de excitação de banda baixa 205 pode ser recebido pelo amostrador 206 como um conjunto de amostras que corresponde a uma taxa de amostragem de 12,8 kHz (por exemplo, a taxa de amostragem Nyquist de a sinal de excitação de banda baixa de 6,4 kHz 205). Por exemplo, o sinal de excitação de banda baixa 205 pode ser amostrado em duas vezes a taxa da largura de banda do sinal de excitação de banda baixa 205.
[0066] Um primeiro gerador de transformação não linear 208 pode ser configurado para gerar um sinal estendido de largura de banda 209, ilustrados como um sinal de excitação não linear com base no sinal de resolução reduzida 207. Por exemplo, o gerador de transformação não linear 208 pode realizar uma operação de transformação não linear (por exemplo, uma operação de valor absoluto ou uma operação quadrada) no sinal de resolução reduzida 207 para gerar o sinal estendido de largura de banda 209. A operação de transformação não linear pode estender os harmônicos do sinal original, o sinal de excitação de banda baixa 205 de 0 Hz a F1 Hz (por exemplo, 0 Hz a 6,4 kHz), em uma banda maior, como de 0 Hz a F Hz (por exemplo, de 0 Hz a 16 kHz).
[0067] O sinal estendido de largura de banda 209 pode ser fornecido para um primeiro módulo de inversão de espectro 210. O primeiro módulo de inversão de espectro 210 pode ser configurado para realizar uma operação de espelho de espectro (por exemplo, “inverter” o espectro) do sinal estendido de largura de banda 209 para gerar um sinal “invertido” 211. Inverter o espectro do sinal estendido de largura de banda 209 pode alterar (por exemplo, “inverter”) o conteúdo do sinal estendido de largura de banda 209 para extremidades opostas do espectro que está na faixa de 0 Hz a F Hz (por exemplo, de 0 Hz a 16 kHz) do sinal invertido 211. Por exemplo, conteúdo em 14,4 kHz do sinal estendido de largura de banda 209 pode estar em 1,6 kHz do sinal invertido 211, conteúdo a 0 Hz do sinal estendido de largura de banda 209 pode estar em 16 kHz do sinal invertido 211, etc.
[0068] O sinal invertido 211 pode ser fornecido para uma entrada de um comutador 212 que roteia de modo seletivo o sinal invertido 211 em um primeiro modo de operação para uma primeira trajetória que inclui um filtro 214 e um misturador descendente 216, ou em um segundo modo de operação para uma segunda trajetória que inclui um filtro 218. Por exemplo, o comutador 212 pode incluir um multiplexador em resposta a um sinal em uma entrada de controle que indica o modo de operação do encriptador 200.
[0069] No primeiro modo de operação, o sinal invertido 211 é passa banda filtrado no filtro 214 para gerar um sinal de passa banda 215 com conteúdo de sinal reduzido ou removido fora da faixa de frequência de (F a F2) Hz a (F a F1) Hz, em que F2> F1. Por exemplo, quando F=16k, F1=6,4k, e F2 = 14,4k, o sinal invertido 211 pode ser passa banda filtrado para a faixa de frequência 1,6 kHz a 9,6 kHz. O filtro 214 pode incluir um filtro de polo zero configurado para operar como um filtro passa baixo que tem uma frequência de recorte em aproximadamente F a F1 (por exemplo, a 16 kHz a 6.4 kHz = 9,6 kHz). Por exemplo, o filtro de polo zero pode ser um filtro de ordem alta que tem uma distribuição nítida na frequência de recorte e configurada para filtrar componentes fora de frequência alta do sinal invertido 211 (por exemplo, componentes fora de filtro do sinal invertido 211 entre (F a F1) e F, como entre 9,6 kHz e 16 kHz). Além disso, o filtro 214 pode incluir um filtro passa alto configurado para atenuar componentes de frequência em um sinal de saída que estão abaixo de F a F2 (por exemplo, abaixo de 16 kHz a 14,4 kHz = 1,6 kHz).
[0070] O sinal de passa banda 215 pode ser fornecido para o misturador descendente 216, que pode gerar um sinal 217 que tem uma largura de banda efetiva de sinal que se estende de 0 Hz a (F2 a F l) Hz, como de 0 Hz a 8 kHz. Por exemplo, o misturador descendente 216 pode ser configurado para realizar redução de mixagem do sinal de passa banda 215 da faixa de frequência entre 1,6 kHz e 9,6 kHz para banda de base (por exemplo, uma faixa de frequência entre 0 Hz e 8 kHz) para gerar o sinal 217. O misturador descendente 216 pode ser implantado com o uso de dois estágios de transformadas de Hilbert. Por exemplo, o misturador descendente 216 pode ser implantado com o uso de dois filtros de resposta de impulso infinito de quinta ordem (IIR) que tem componentes imaginários e reais.
[0071] No segundo modo de operação, o comutador 212 fornece o sinal invertido 211 para o filtro 218 para gerar um sinal 219. O filtro 218 pode operar como um filtro passa baixo para atenuar componentes de frequência acima (F2 a F1) Hz (por exemplo, acima de 8 kHz). A filtragem passa baixo no filtro 218 pode ser realizada como parte de um processo de reamostragem em que a taxa de amostra é convertida para 2*(F2-F1) (por exemplo, para 2*(14,4 Hz a 6,4 Hz = 16 kHz)).
[0072] Um comutador 220 emite um dos sinais 217, 219 a serem processados em um módulo de embranquecimento e escalonamento adaptativo 222 de acordo com o modo de operação, e uma saída do módulo de embranquecimento e escalonamento adaptativo é fornecida para uma primeira entrada de um combinador 240, como um adicionador. Uma segunda entrada do combinador 240 recebe um sinal que resulta de uma saída de um gerador de ruído aleatório 230 que foi processado de acordo com um módulo de envelope de ruído 232 (por exemplo, um modulador) e um módulo de escalonamento 234. O combinador 240 gera um sinal de excitação de banda alta 241, como o sinal de excitação de banda alta 161 da Figura 1.
[0073] O sinal de entrada 201 que tem uma largura de banda efetiva na faixa de frequência entre 0 Hz e F Hz também pode ser processado em uma trajetória de geração de sinal de banda de base. Por exemplo, o sinal de entrada 201 pode ser invertido de modo espectral em um módulo de inversor espectral 242 para gerar um sinal invertido 243. O sinal invertido 243 pode ser passa banda filtrado em um filtro 244 para gerar um sinal de passa banda 245 que tem componentes de sinal removidos ou reduzidos fora da faixa de frequência de (F a F2) Hz a (F a F1) Hz (por exemplo, de 1,6 kHz a 9,6 kHz).
[0074] Em um aspecto particular, o filtro 244 determina uma característica de sinal de uma faixa de frequência superior da porção de banda alta do sinal de entrada 201. Como um exemplo não limitante ilustrativo, o filtro 244 pode determinar uma média a longo prazo de uma planta de sinal de banda alta com base em saídas de filtro que correspondem à faixa de frequência de 12 kHz a 16 kHz, conforme descrito em referência à Figura 1. A Figura 3 ilustra exemplos de tais sinais limitados por banda (representados como 1 a 7). A estimativa de coeficientes de previsão linear (LPCs) desses sinais limitados de questões de quantização e estabilidade de representação de banda que levam aos artefatos na banda alta. Por exemplo, se um sinal de entrada amostrado de 32 kHz é limitado por banda a 10 kHz (isto é, há energia muito limitada acima de 10 kHz e até Nyquist) e a banda alta é criptada de 8 a 16 kHz ou 6,4 a 14,4kHz, então, o conteúdo espectral limitado por banda de 8 a 10 kHz pode ocasionar questões de estabilidade em estimativa de LPC de banda alta. Em particular, os coeficientes de LP podem ser saturados devido à perda em precisão quando representados em um formato Q de precisão de ponto fixo desejado. Em tais cenários, uma ordem de previsão inferior pode ser usada para a análise de LP (por exemplo, usar ordem de LPC = 2 ou 4 em vez de 10). Essa redução da ordem de LPC para análise de LP para limitar as questões de saturação e estabilidade pode ser realizada com base no ganho de LP ou na energia do filtro de síntese de LP. Se o ganho de LP for maior que um limiar particular, então, a ordem de LPC pode ser ajustada para um valor inferior. A energia de filtro de síntese de LP é determinada por |1/A(z)|A2, em que A(z) é a análise de LP filtro. Um valor de ganho de LP típico de 64 que corresponde a 48 dB é um bom indicador para verificar os ganhos de LP altos nesses cenários limitados por banda e controlar a ordem de previsão para evitar as questões de saturação em estimativa de LPC.
[0075] O sinal de passa banda 245 pode sofrer mixagem de redução em um misturador descendente 246 para gerar o sinal-“alvo” de banda alta 247 que tem uma largura de banda efetiva de sinal na faixa de frequência de 0 Hz a (F2 a F1) Hz (por exemplo, de 0 Hz a 8 kHz). O sinal-alvo de banda alta 247 é um sinal de banda de base que corresponde à primeira faixa de frequência.
[0076] Os parâmetros que representam as modificações para o sinal de excitação de banda alta 241 de modo que o mesmo represente o sinal-alvo de banda alta 247 podem ser extraídos e transmitidos para o decodificador. Para ilustrar, o sinal-alvo de banda alta 247 pode ser processado por um módulo de análise de LP 248 para gerar LPCs que são convertidos para LSPs em um conversor de LPC para LSP 250 e quantizado em um módulo de quantização 252. O módulo de quantização 252 pode gerar índices de quantização de LSP a serem enviados para o decodificador, como nas informações secundárias de banda alta 172 da Figura 1.
[0077] Os LPCs podem ser usados para configurar um filtro de síntese 260 que recebe o sinal de excitação de banda alta 241 como uma entrada e gera um sinal de banda alta sintetizado 261 como uma saída. O sinal de banda alta sintetizado 261 é comparado ao sinal-alvo de banda alta 247 (por exemplo, energias dos sinais 261 e 247 pode ser comparado a cada subquadro dos respectivos sinais) em um módulo de estimativa de envelope temporal 262 para gerar informações de ganho 263, como valores de parâmetro de formato de ganho. As informações de ganho 263 são fornecidas para um módulo de quantização 264 para gerar índices de informações de ganho quantizados a serem enviados para o decodificador, como nas informações secundárias de banda alta 172 da Figura 1.
[0078] Conforme descrito acima, uma ordem de previsão inferior pode ser usada para a análise de LP (por exemplo, usar ordem de LPC = 2 ou 4 em vez de 10) se o ganho de LP for maior que um limiar particular para reduzir a saturação. Para ilustrar, o módulo de análise de LP 248 pode operar de acordo com o pseudocódigo a seguir: { float energy, lpc_shbl [M+1]; /*extend the super-high-band LPCs (lpc_shb) to a 16th order gain calculation */ /*initialize a temporary super-high-band LPC vector (lpc_shbl) with 0 values */ set_f(lpc_shbl, 0, M+1); /*copy super-high-band LPCs that are in lpc_shb to lpc_shbl */ mvr2r(lpc_shb, lpc_shbl, LPC SHB ORDER + 1); /*estimate the LP gain */ /*enr_l_Az outputs impulse response energy (enerG) corresponding to LP gain based on LPCs and sub-frame size */ enerG = enr_l_Az(lpc_shbl, 2*L_SUBRF); /*if the LP gain is greater than a threshold, avoid saturation. The function ‘is numeric float’ is used to check for infinity enerG */ if(enerG > 64 || !(is_numeric_float(enerG))) { /*re-initialize lpc_shb with 0 values */ set_f(lpc_shb, 0, LPC_SHB_ORDER+1); /*populate lpc_shb with new LPCs for LP order =2 based on a vector of autocorrelations (R) and a prediction error energy (ervec) using a Levinson-Durbin recursion operation */ lev_dur(lpc_shb, R, 2, ervec); } }
[0079] Com base no pseudocódigo, o módulo de análise de LP 248 pode determinar um ganho de LP com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP. Por exemplo, o módulo de análise de LP 248 pode estimar o ganho de LP (por exemplo, “enerG”) com o uso da função “ener_1_Az”. A função pode usar um filtro de 16a ordem (por exemplo, um cálculo de ganho de décima sexta ordem) para estimar o ganho de LP. O módulo de análise de LP 248 também pode comparar o ganho de LP a um limiar. De acordo com o pseudocódigo, o limiar tem um valor numérico de 64. No entanto, deve ser entendido que o limiar no pseudocódigo é meramente usado como um exemplo não limitante e outros valores numéricos podem ser usados como o limiar. O módulo de análise de LP 248 também pode determinar se o nível de energia (“enerG”) excede um limite. Por exemplo, o módulo de análise de LP 248 pode determinar se o nível de energia é “infinito” com o uso da função “is_numeric_float”. Se o módulo de análise de LP 248 determinar que o nível de energia (por exemplo, o ganho de LP) satisfaz o limiar (por exemplo, é maior que o limiar) ou excede o limite, ou ambos, o módulo de análise de LP 248 pode reduzir a ordem de LP do primeiro valor (por exemplo, 16) para um segundo valor (por exemplo, 2 ou 4) para reduzir uma probabilidade de LPC saturação.
[0080] Em um aspecto particular, o módulo de estimativa de envelope temporal 262 pode ajustar valores do parâmetro de formato de ganho quando a característica de sinal determinada pelo filtro 244 satisfaz um limiar (por exemplo, quando a característica de sinal indica que o sinal de entrada 201 tem pouco ou nenhum conteúdo na faixa de frequência superior da porção de banda alta). Quando cripta tais sinais, oscilações grandes nos valores do parâmetro de formato de ganho ocorrem do quadro para o quadro e/ou do subquadro para o subquadro, resultando em artefatos audíveis em um sinal de áudio reconstruído. Por exemplo, conforme envolvido na Figura 3, artefatos de banda alta podem estar presentes em um sinal de áudio reconstruído. As técnicas da presente invenção podem possibilitar reduzir ou eliminar a presença de tais artefatos ajustando-se de modo seletivo valores de parâmetro de formato de ganho quando o sinal de entrada 201 tem pouco ou nenhum conteúdo na porção de banda alta, ou pelo menos uma região de frequência superior da mesma.
[0081] Conforme descrito em relação à primeira trajetória, no primeiro modo de operação a trajetória de geração de sinal de excitação de banda alta 241 inclui uma operação de mixagem de redução para gerar o sinal 217. Essa operação de mixagem de redução pode ser complexa se implantada através de transformadores Hilbert. Uma implantação alternativa pode ter como base filtros de espelho de quadratura (QMFs). No segundo modo de operação, a operação de mixagem de redução não é incluída na trajetória de geração de sinal de excitação de banda alta 241. Isso resulta em uma incompatibilidade entre o sinal de excitação de banda alta 241 e o sinal-alvo de banda alta 247. Será verificado que gerar o sinal de excitação de banda alta 241 de acordo com o segundo modo (por exemplo, com o uso de o filtro 218) pode ignorar o filtro de polo zero 214 e o misturador descendente 216 e reduzir operações computacionalmente dispendiosas e complexas associadas à filtragem de polo zero e ao misturador descendente. Embora a Figura 2 descreva a primeira trajetória (incluindo o filtro 214 e o misturador descendente 216) e a segunda trajetória (incluindo o filtro 218) como sendo associadas aos modos de operação distintos do encriptador 200, em outros aspectos, o encriptador 200 pode ser configurado para operar no segundo modo sem ser configurável para também operar no primeiro modo (por exemplo, o encriptador 200 pode omitir o comutador 212, o filtro 214, o misturador descendente 216, e o comutador 220, que tem a entrada do filtro 218 acoplada para receber o sinal invertido 211 e que tem o sinal 219 fornecido para a entrada do módulo de embranquecimento e escalonamento adaptativo 222).
[0082] A Figura 4 representa um aspect particular de um decodificador 400 que pode ser usado para decodificar um sinal de áudio criptado, como um sinal de áudio criptado gerado pelo sistema 100 da Figura 1 ou o encriptador 200 da Figura 2.
[0083] O decodificador 400 inclui um decodificador de banda baixa 404, como um decodificador de núcleo de ACELP 404, que recebe um sinal de áudio criptado 401. O sinal de áudio criptado 401 é uma versão criptada de um sinal de áudio, como o sinal de entrada 201 da Figura 2,e inclui primeiros dados 402 (por exemplo, um sinal de excitação de banda baixa 205 e índices de LSP quantizados) que correspondem a uma porção de banda baixa do sinal de áudio e segundos dados 403 (por exemplo, dados de envelope de ganho 463 e índices de LSP quantizados 461) que correspondem a uma porção de banda alta do sinal de áudio. Em um aspecto particular, os dados de envelope de ganho 463 incluem valores de parâmetro de formato de ganho que são ajustados de modo seletivo para limitar faixa de variabilidade/dinâmica quando um sinal de entrada (por exemplo, o sinal de entrada 201) tem pouco ou nenhum conteúdo na porção de banda alta (ou uma região de frequência superior do mesmo).
[0084] O decodificador de banda baixa 404 gera um sinal decodificado de banda baixa sintetizado 471. A síntese de sinal de banda alta inclui fornecer o sinal de excitação de banda baixa 205 da Figura 2 (ou uma representação do sinal de excitação de banda baixa 205, como uma versão quantizada do sinal de excitação de banda baixa 205 recebido de um encriptador) para o amostrador ascendente 206 da Figura 2. A síntese de banda alta inclui gerar o sinal de excitação de banda alta 241 com o uso do amostrador ascendente 206, o módulo de transformação não linear 208, o módulo de inversor espectral 210, o filtro 214 e o misturador descendente 216 (em um primeiro modo de operação) ou o filtro 218 (em um segundo modo de operação) conforme controlado pelos comutadores 212 e 220 e o módulo de embranquecimento e escalonamento adaptativo 222 para fornecer uma primeira entrada para o combinador 240 da Figura 2. Uma segunda entrada para o combinador é gerada por uma saída do gerador de ruído aleatório 230 processada pelo módulo de envelope de ruído 232 e escalonada no módulo de escalonamento 234 da Figura 2.
[0085] O filtro de síntese 260 da Figura 2 pode ser configurado no decodificador 400 de acordo com índices de quantização de LSP recebidos de um encriptador, como saída pelo módulo de quantização 252 do encriptador 200 da Figura 2 e processa o sinal de excitação 241 emitido pelo combinador 240 para gerar um sinal sintetizado. O sinal sintetizado é fornecido para um módulo de aplicação de envelope temporal 462 que é configurado para aplicar um ou mais ganhos, como valores de parâmetro de formato de ganho (por exemplo, de acordo com índices de envelope de ganho emitidos do módulo de quantização 264 do encriptador 200 da Figura 2) para gerar um sinal ajustado.
[0086] A síntese de banda alta continua com o processamento por um misturador 464 configurado para mixagem de aumento do sinal ajustado da faixa de frequência de 0 Hz a (F2 a F1) Hz para a faixa de frequência de (F a F2) Hz a (F a F1) Hz (por exemplo, 1,6 kHz a 9,6 kHz). Um sinal com mixagem de aumento emitido pelo misturador 464 é amostrado de modo ascendente em um amostrador 466 e uma saída com mixagem de aumento de do amostrador 466 é fornecida para um módulo de inversor espectral 468 que pode operar conforme descrito em relação ao módulo de inversor espectral 210 para gerar um sinal decodificado de banda alta 469 que tem uma banda de frequência que se estende de F1 Hz a F2 Hz.
[0087] O sinal decodificado de banda baixa 471 emitido pelo decodificador de banda baixa 404 (de 0 Hz a F1 Hz) e o sinal decodificado de banda alta 469 emitido do módulo de inversor espectral 468 (de F1 Hz a F2 Hz) são fornecidos para um banco de filtro de síntese 470. O banco de filtro de síntese 470 gera um sinal sintetizado de áudio 473, como uma versão sintetizada do sinal de áudio 201 da Figura 2, com base em uma combinação do sinal decodificado de banda baixa 471 e o sinal decodificado de banda alta 469, e que tem uma faixa de frequência de 0 Hz a F2 Hz.
[0088] Conforme descrito em relação à Figura 2, gerar o sinal de excitação de banda alta 241 de acordo com o segundo modo (por exemplo, com o uso de o filtro 218) pode ignorar o filtro de polo zero 214 e o misturador descendente 216 e reduzir operações computacionalmente dispendiosas e complexas associadas à filtragem de polo zero e ao misturador descendente. Embora a Figura 4 descreva a primeira trajetória (incluindo o filtro 214 e o misturador descendente 216) e a segunda trajetória (incluindo o filtro 218) como sendo associadas aos modos de operação distintos do decodificador 400, em outros aspectos, o decodificador 400 pode ser configurado para operar no segundo modo sem ser configurável para também operar no primeiro modo (por exemplo, o decodificador 400 pode omitir o comutador 212, o filtro 214, o misturador descendente 216, e o comutador 220, que tem a entrada do filtro 218 acoplada para receber o sinal invertido 211 e que tem o sinal 219 fornecido para a entrada do módulo de embranquecimento e escalonamento adaptativo 222).
[0089] Com referência à Figura 5A, um aspecto particular de um método 500 de ajustar um parâmetro de ganho temporal com base em uma característica de sinal de banda alta é mostrado. Em um aspecto ilustrativo, o método 500 pode ser realizado pelo sistema 100 da Figura 1 ou o encriptador 200 da Figura 2.
[0090] O método 500 pode incluir determinar se uma característica de sinal de uma faixa de frequência superior de uma porção de banda alta de um sinal de áudio satisfaz um limiar, em 502. Por exemplo, na Figura 1, o ajustador de ganho 162 pode determinar se a característica de sinal 126 satisfaz o limiar 165.
[0091] Ao avançar para 504, o método 500 pode gerar um sinal de excitação de banda alta que corresponde à porção de banda alta. O método 500 pode gerar adicionalmente uma porção de banda alta sintetizada com base no sinal de excitação de banda alta, em 506. Por exemplo, na Figura 1, o gerador de excitação de banda alta 160 pode gerar o sinal de excitação de banda alta 161 e o módulo de síntese 164 pode gerar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta 161.
[0092] Continuando em 508, o método 500 pode determinar um valor de um parâmetro de ganho temporal (por exemplo, formato de ganho) com base em uma comparação da porção de banda alta sintetizada para a porção de banda alta. O método 500 também pode incluir determinar se a característica de sinal satisfaz um limiar, em 510. Quando a característica de sinal satisfaz o limiar, o método 500 pode incluir ajustar o valor do parâmetro de ganho temporal em 512. Ajustar o valor do parâmetro de ganho temporal pode limitar uma variabilidade do parâmetro de ganho temporal. Por exemplo, na Figura 1, o ajustador de ganho 162 pode ajustar um valor do parâmetro de formato de ganho quando a característica de sinal de banda alta 126 satisfaz o limiar 165 (por exemplo, a característica de sinal de banda alta 126 indica que o sinal de áudio 102 tem pouco ou nenhum conteúdo em uma porção de banda alta (ou pelo menos uma região de frequência superior da mesma)). Em um aspecto ilustrativo, ajustar o valor do parâmetro de formato de ganho inclui computar um segundo valor do parâmetro de formato de ganho com base em uma soma de uma constante normalizada (por exemplo, 0,315) e uma porcentagem particular (por exemplo, 10%) de um primeiro valor do parâmetro de formato de ganho, conforme mostrado no pseudocódigo descrito em referência à Figura 1.
[0093] Quando a característica de sinal não satisfaz o limiar, o método 500 pode incluir com o uso do valor não ajustado do parâmetro de ganho temporal, em 514. Por exemplo, na Figura 1, quando o sinal de áudio 102 inclui conteúdo suficiente, a porção de banda alta (ou pelo menos uma região de frequência superior da mesma), o ajustador de ganho 162 pode se abster de limitar variabilidade do(s) valor(es) de parâmetro de formato de ganho.
[0094] Em aspectos particulares, o método 500 da Figura 5A pode ser implantado por meio de hardware (por exemplo, um dispositivo de arranjo de portas programáveis por campo (FPGA), um circuito integrado específico de aplicação (ASIC), etc.) de uma unidade de processamento, como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), ou um controlador, por meio de um dispositivo de firmware, ou qualquer combinação dos mesmos. Como um exemplo, o método 500 da Figura 5A pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura. 6.
[0095] Com referência à Figura 5B, um aspecto particular de um método 520 para calcular uma característica de sinal de banda alta é mostrado. Em um aspecto ilustrativo, o método 520 pode ser realizado pelo sistema 100 da Figura 1 ou o encriptador 200 da Figura 2.
[0096] O método 520 inclui gerar uma versão invertida de modo espectral de um sinal de áudio ao realizar uma operação invertida de espectro no sinal de áudio para processar uma porção de banda alta do sinal de áudio na banda de base, em 522. Por exemplo, com referência à Figura 2, o módulo de inversor espectral 242 pode gerar o sinal invertido 243 (por exemplo, uma versão invertida de modo espectral do sinal de entrada 201) realizando-se uma operação invertida de espectro no sinal de entrada 201. Inverter de modo espectral o sinal de entrada 201 pode possibilitar o processamento da faixa de frequência superior da porção de banda alta (por exemplo, porção de 12 a 16 kHz) do sinal de entrada 201 na banda de base.
[0097] Uma soma de valores de energia pode ser calculada com base na versão invertida de modo espectral do sinal de áudio, em 524. Por exemplo, com referência à Figura 1, o módulo de pré-processamento 110 pode realizar uma operação de média a longo prazo na soma de valores de energia. Os valores de energia podem corresponder às saídas de QMF que correspondem à faixa de frequência superior da porção de banda alta do sinal de entrada 201. A soma de valores de energia pode ser indicativa da característica de sinal de banda alta 126.
[0098] O método 520 da Figura 5B pode reduzir artefatos gerados durante criptação/decodificação de um sinal limitado por banda de áudio. Por exemplo, a média a longo prazo da soma de valores de energia pode ser indicativa da característica de sinal de banda alta 126. Se a característica de sinal de banda alta 126 satisfizer um limiar (por exemplo, a característica de sinal indica que o sinal de áudio é limitado por banda e tem pouco ou nenhum conteúdo de banda alta), um encriptador pode ajustar o valor de o parâmetro de formato de ganho para limitar variabilidade (por exemplo, uma faixa dinâmica limitada) do parâmetro de formato de ganho. Limitar a variabilidade do parâmetro de formato de ganho pode reduzir artefatos gerados durante a criptação/decodificação do sinal limitado por banda de áudio.
[0099] Em aspectos particulares, o método 520 da Figura 5B pode ser implantado por meio de hardware (por exemplo, um dispositivo de arranjo de portas programáveis por campo (FPGA), um circuito integrado específico de aplicação (ASIC), etc.) de uma unidade de processamento, como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), ou um controlador, por meio de um dispositivo de firmware, ou qualquer combinação dos mesmos. Como um exemplo, o método 520 da Figura 5B pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura. 6.
[0100] Com referência à Figura 5C, um aspecto particular de um método 540 de ajustar LPCs de um encriptador é mostrado. Em um aspecto ilustrativo, o método 540 pode ser realizado pelo sistema 100 da Figura 1 ou o módulo de análise de LP 248 da Figura 2. De acordo com uma implantação, o módulo de análise de LP 248 pode operar de acordo com o pseudocódigo correspondente descrito acima para realizar o método 540.
[0101] O método 540 inclui determinar, em um encriptador, um ganho de previsão linear (L9) com base em uma operação de ganho de LP que usa um primeiro valor para uma ordem de LP, em 542. O ganho de LP pode ser associado a um nível de energia de um filtro de síntese de LP. Por exemplo, com referência à Figura 2, o módulo de análise de LP 248 pode determinar um ganho de LP com base em um cálculo de ganho de LP que usa um primeiro valor para uma ordem de LP. De acordo com uma implantação, o primeiro valor corresponde a um filtro de décima sexta ordem. O ganho de LP pode ser associado a um nível de energia do filtro de síntese 260. Por exemplo, o nível de energia pode corresponder a um nível de energia de resposta de impulso que tem como base um tamanho de quadro de áudio de um quadro de áudio e com base em um número de LPCs gerados para o quadro de áudio. O filtro de síntese 260 (por exemplo, o filtro de síntese de LP) pode ser responsivo ao sinal de excitação de banda alta 241 gerado de uma extensão não linear de um sinal de excitação de banda baixa (por exemplo, gerado do sinal estendido de largura de banda 209).
[0102] O ganho de LP pode ser comparado a um limiar, em 544. Por exemplo, com referência à Figura 2, o módulo de análise de LP 248 pode comparar o ganho de LP a um limiar. A ordem de LP pode ser reduzida do primeiro valor para um segundo valor se o ganho de LP satisfizer o limiar, em 546. Por exemplo, com referência à Figura 2, o módulo de análise de LP 248 pode reduzir a ordem de LP do primeiro valor para um segundo valor se o ganho de LP satisfizer (por exemplo, estiver acima) o limiar. De acordo com uma implantação, o segundo valor corresponde a um filtro de segunda ordem. De acordo com outra implantação, o segundo valor corresponde a um filtro de quarta ordem.
[0103] O método 540 também pode incluir determinar se o nível de energia excede um limite. Por exemplo, com referência à Figura 2, o módulo de análise de LP 248 pode determinar se o nível de energia do filtro de síntese 260 excede um limite (por exemplo, um limite “infinito” que pode fazer com que o valor de energia seja interpretado como tendo um valor numérico incorreto). A ordem de LP pode ser reduzida do primeiro valor para o segundo valor em resposta ao nível de energia do filtro de síntese 260 que excede o limite.
[0104] Em aspectos particulares, o método 540 da Figura 5C pode ser implantado por meio de hardware (por exemplo, um dispositivo de FPGA, um ASIC, etc.) de uma unidade de processamento, como uma CPU, um DSP ou um controlador, por meio de um dispositivo de firmware, ou qualquer combinação dos mesmos. Como um exemplo, o método 540 da Figura 5C pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura. 6.
[0105] Com referência à Figura 6, um diagrama de blocos de um aspecto ilustrativo particular de um dispositivo (por exemplo, um dispositivo de comunicação sem fio) é representado e, em geral, designado como 600. Em diversos aspectos, o dispositivo 600 pode ter menos ou mais componentes que os ilustrados na Figura 6. Em um aspecto ilustrativo, o dispositivo 600 pode corresponder a um ou mais componentes de um ou mais sistemas, aparelho ou dispositivos descritos em referência às Figuras 1,2 e 4. Em um aspecto ilustrativo, o dispositivo 600 pode operar de acordo com um ou mais métodos, descritos no presente documento, como todo ou uma porção do método 500 da Figura 5A, o método 520 da Figura 5B e/ou o método 540 da Figura 5C.
[0106] Em um aspecto particular, o dispositivo 600 inclui um processador 606 (por exemplo, uma unidade de processamento central (CPU)). I dispositivo 600 pode incluir um ou mais processadores adicionais 610 (por exemplo, um ou mais processadores de sinal digital (DSPs)). Os processadores 610 podem incluir um codificador- decodificador de discurso e música (CODEC) 608 e um cancelador de eco 612. O CODEC de discurso e música 608 pode incluir um encriptador de vocodificador 636, um decodificador de vocodificador 638, ou ambos.
[0107] Em um aspecto particular, o encriptador de vocodificador 636 pode incluir o sistema 100 da Figura 1 ou o encriptador 200 da Figura 2. O encriptador de vocodificador 636 pode incluir um ajustador de formato de ganho 662 configurado para ajustar de modo seletivo informações de ganho temporais (por exemplo, valor(es) de parâmetro de formato de ganho) com base em uma característica de sinal de banda alta (por exemplo, quando a característica de sinal de banda alta indica que um sinal de áudio de entrada tem pouco ou nenhum conteúdo em uma faixa de frequência superior de uma porção de banda alta).
[0108] O decodificador de vocodificador 638 pode incluir o decodificador 400 da Figura 4. Por exemplo, o decodificador de vocodificador 638 pode ser configurado para realizar reconstrução de sinal 672 com base em valores de parâmetro de formato de ganho ajustados. Embora o CODEC de discurso e música 608 seja ilustrado como um componente dos processadores 610, em outros aspectos, um ou mais componentes do CODEC de discurso e música 608 podem ser incluídos no processador 606, no CODEC 634, outro componente de processamento, ou uma combinação dos mesmos.
[0109] O dispositivo 600 pode incluir uma memória 632 e um controlador sem fio 640 acoplado a uma antena 642 por meio de transceptor 650. O dispositivo 600 pode incluir um visor 628 acoplado a um controlador de exibição 626. Um alto-falante 648, um microfone 646, ou ambos podem ser acoplados ao CODEC 634. O CODEC 634 pode incluir um conversor de digital para analógico (DAC) 602 e um conversor de analógico para digital (ADC) 604.
[0110] Em um aspecto particular, o CODEC 634 pode receber sinais analógicos do microfone 646, converter os sinais analógicos para sinais digitais com o uso do conversor de analógico para digital 604, e fornecer os sinais digitais para o CODEC de discurso e música 608, como em um formato de modulação de código de pulso (PCM). O CODEC de discurso e música 608 pode processar os sinais digitais. Em um aspecto particular, o CODEC de discurso e música 608 pode fornecer sinais digitais para o CODEC 634. O CODEC 634 pode converter os sinais digitais para sinais analógicos com o uso do conversor de digital para analógico 602 e pode fornecer os sinais analógicos para o alto- falante 648.
[0111] A memória 632 pode incluir instruções 656 executáveis pelo processador 606, pelos processadores 610, pelo CODEC 634, por outra unidade de processamento do dispositivo 600, ou uma combinação dos mesmos, para realizar métodos e processos revelados no presente documento, como os métodos das Figuras 5A a 5B. Um ou mais componentes dos sistemas das Figuras 1, 2 ou 4 podem ser implantados por meio de hardware dedicado (por exemplo, conjunto de circuitos), por um processador que executa instruções para realizar uma ou mais tarefas ou uma combinação dos mesmos. Como um exemplo, a memória 632 ou um ou mais componentes do processador 606, dos processadores 610 e/ou do CODEC 634 podem ser um dispositivo de memória, como uma memória de acesso aleatório (RAM), memória de acesso aleatório magnetorresistiva (MRAM), MRAM de transferência de torque de rotação (STT-MRAM), memória flash, memória de apenas leitura (ROM), memória de apenas leitura programável (PROM), memória de apenas leitura programável apagável (EPROM), memória de apenas leitura programável eletricamente apagável (EEPROM), registradores, disco rígido, um disco removível ou uma memória de apenas leitura de disco compacto (CD-ROM). O dispositivo de memória pode incluir instruções (por exemplo, as instruções 656) que, quando executadas por um computador (por exemplo, um processador no CODEC 634, o processador 606 e/ou os processadores 610), podem fazer com que o computador realize pelo menos uma porção dos métodos das Figuras 5A a 5B. Como um exemplo, a memória 632 ou o um ou mais componentes do processador 606, dos processadores 610, do CODEC 634 podem ser um meio legível por computador não transitório que inclui instruções (por exemplo, as instruções 656) que, quando executadas por um computador (por exemplo, um processador no CODEC 634, o processador 606 e/ou os processadores 610), fazem com que o computador realize pelo menos uma porção dos métodos das Figuras 5A a 5B.
[0112] Em um aspecto particular, o dispositivo 600 pode ser incluído em um dispositivo de sistema em pacote ou sistema em chip 622, como um modem de estação móvel (MSM). Em um aspecto particular, o processador 606, os processadores 610, o controlador de exibição 626, a memória 632, o CODEC 634, o controlador sem fio 640 e o transceptor 650 são incluídos em um dispositivo de sistema em pacote ou o dispositivo de sistema em chip 622. Em um aspecto particular, um dispositivo de entrada 630, como uma tela sensível ao toque e/ou teclado, e uma fonte de alimentação 644 são acoplados ao dispositivo de sistema em chip 622. Além disso, em um aspecto particular, conforme ilustrado na Figura 6, o visor 628, o dispositivo de entrada 630, o alto-falante 648, o microfone 646, a antena 642 e a fonte de alimentação 644 são externos ao dispositivo de sistema em chip 622. No entanto, cada um dentre o visor 628, o dispositivo de entrada 630, o alto- falante 648, o microfone 646, a antena 642 e a fonte de alimentação 644 podem ser acoplados a um componente do dispositivo de sistema em chip 622, como uma interface ou um controlador. Em um aspecto ilustrativo, o dispositivo 600 corresponde a um dispositivo de comunicação móvel, um telefone inteligente, um telefone celular, um computador do tipo laptop, um computador, um computador do tipo tablet, um assistente pessoal digital, um dispositivo de exibição, uma televisão, um console de jogos, um reprodutor de música, um rádio, um reprodutor de vídeo digital, um reprodutor de disco óptico, um sintonizador, uma câmera, um dispositivo de navegação, um sistema de decodificador, um sistema de encriptador ou qualquer combinação dos mesmos.
[0113] Em um aspecto ilustrativo, os processadores 610 podem ser operáveis para realizar operações de criptação e decodificação de sinal de acordo com as técnicas descritas. Por exemplo, o microfone 646 pode capturar um sinal de áudio. O ADC 604 pode converter O sinal de áudio de capturado de uma forma de onda análoga em uma forma de onda digital que inclui amostras de áudio digitais. Os processadores 610 podem processar as amostras de áudio digitais. O cancelador de eco 612 pode reduzir um eco que pode ter sido criado por uma saída do alto-falante 648 que entra no microfone 646.
[0114] O encriptador de vocodificador 636 pode compactar amostras de áudio digitais que correspondem a um sinal de discurso processado e pode formar um pacote de transmissão (por exemplo, uma representação dos bits compactados das amostras de áudio digitais). Por exemplo, o pacote de transmissão pode corresponder a pelo menos uma porção dos fluxos de bit 192 da Figura 1. O pacote de transmissão pode ser armazenado na memória 632. O transceptor 650 pode modular alguma forma do pacote de transmissão (por exemplo, outras informações podem ser anexadas ao pacote de transmissão) e pode transmitir os dados modulados por meio da antena 642.
[0115] Como um exemplo adicional, a antena 642 pode receber pacotes recebidos que incluem um pacote de recebimento. O pacote de recebimento pode ser enviado por outro dispositivo por meio de uma rede. Por exemplo, o pacote de recebimento pode corresponder a pelo menos uma porção dos fluxos de bit recebidos no decodificador de núcleo de ACELP 404 da Figura 4. O decodificador de vocodificador 638 pode descompactar e decodificar o pacote de recebimento para gerar amostras de áudio reconstruídas (por exemplo, que correspondem ao sinal sintetizado de áudio 473). O cancelador de eco 612 pode remover eco das amostras de áudio reconstruídas. O DAC 602 pode converter uma saída do decodificador de vocodificador 638 de uma forma de onda digital para uma forma de onda análoga e pode fornecer a forma de onda convertida para o alto-falante 648 para a saída.
[0116] Os indivíduos versados na técnica observarão que os diversos blocos lógicos, configurações, módulos, circuitos e etapas de algoritmo ilustrativos descritos em conexão com os aspectos revelados no presente documento podem ser implantados como hardware eletrônico, software de computador executado por um dispositivo de processamento, como um processador de hardware, ou combinações de ambos. Diversos componentes, blocos, configurações, módulos, circuitos e etapas ilustrativos foram descritos acima, em geral, em termos de sua funcionalidade. Se tal funcionalidade for implantada como hardware ou software executável, depende das restrições de projeto e aplicação particulares impostas no sistema geral. Os indivíduos versados na técnica podem implantar a funcionalidade descrita de diversas maneiras para cada aplicação particular, mas tais decisões de implantação não devem ser interpretadas como causadoras de um afastamento do escopo da presente revelação.
[0117] As etapas de um método ou algoritmo descritos em conexão com os aspectos revelados no presente documento podem ser abrangidas diretamente em hardware, em um módulo de software executado por um processador ou em uma combinação dos dois. Um módulo de software pode residir em um dispositivo de memória, como memória de acesso aleatório (RAM), memória de acesso aleatório magnetorresistiva (MRAM), MRAM de transferência de torque de rotação (STT-MRAM), memória flash, memória de apenas leitura (ROM), memória de apenas leitura programável (PROM), memória de apenas leitura programável apagável (EPROM), memória de apenas leitura programável eletricamente apagável (EEPROM), registradores, disco rígido, um disco removível ou uma memória de apenas leitura de disco compacto (CD-ROM). Um dispositivo de memória exemplificativo é acoplado ao processador de modo que o processador possa ler informações de, e escrever informações para, no dispositivo de memória. Na alternativa, o dispositivo de memória pode ser integrado ao processador. O processador e o meio de armazenamento podem residir em um circuito integrado específico de aplicação (ASIC). O ASIC pode residir em um dispositivo de computação ou em um terminal de usuário. Na alternativa, o processador e o meio de armazenamento podem residir como componentes distintos em um dispositivo de computação ou em um terminal de usuário.
[0118] A descrição anterior dos aspectos revelados é fornecida para possibilitar que um indivíduo versado na técnica produza ou use os aspectos revelados. Diversas modificações em tais aspectos serão prontamente evidentes para aqueles versados na técnica e os princípios definidos no presente documento podem ser aplicados a outros aspectos sem se afastar do escopo da revelação. Desse modo, a presente revelação não se destina a ser limitada aos aspectos mostrados no presente documento, mas deve ser compatível com o mais amplo escopo possível consistente com os princípios e recursos inovadores conforme definido nas reivindicações a seguir.

Claims (18)

1. Método caracterizado pelo fato de que compreende: determinar, em um codificador, uma soma de valores de energia que correspondem às saídas de um banco de filtro de análise, a soma de valores de energia correspondendo a uma faixa de frequência superior de uma porção de banda alta de um sinal de áudio; realizar uma operação de ponderação com base na soma de valores de energia para determinar uma característica de sinal; determinar, no codificador, se a característica de sinal satisfaz um limiar; gerar um sinal de excitação de banda alta que corresponde à porção de banda alta; gerar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta; determinar um valor de um parâmetro de ganho temporal com base em uma comparação da porção de banda alta sintetizada com a porção de banda alta; e em resposta à característica de sinal satisfazer o limiar, ajustar o valor do parâmetro de ganho temporal, em que ajustar o valor do parâmetro de ganho temporal controla uma variabilidade do parâmetro de ganho temporal.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente: gerar uma versão invertida de modo espectral do sinal de áudio ao realizar uma operação invertida de espectro no sinal de áudio para processar a porção de banda alta do sinal de áudio na banda de base; e calcular a soma de valores de energia com base na versão invertida de modo espectral do sinal de áudio.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o sinal de excitação de banda alta é gerado com base em uma extensão harmônica de uma porção de banda baixa do sinal de áudio.
4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que compreende adicionalmente realizar uma operação invertida de espectro na extensão harmônica da porção de banda baixa do sinal de áudio para gerar um sinal invertido de modo espectral.
5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que compreende adicionalmente: realizar uma operação de filtro passa banda no sinal invertido de modo espectral para gerar um sinal filtrado de passa banda; e realizar uma operação de mistura de redução no sinal filtrado de passa banda para gerar um sinal de mistura de redução em banda de base.
6. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que compreende adicionalmente realizar uma operação de filtro passa baixa no sinal invertido de modo espectral para gerar um sinal filtrado de passa baixa.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a característica de sinal é determinada com base em uma versão invertida de modo espectral de um sinal recebido.
8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que a característica de sinal corresponde um uma planta de sinal de banda alta ponderada.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a característica de sinal que satisfaz o limiar é indicativa do sinal de áudio que tem conteúdo limitado na porção de banda alta.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o parâmetro de ganho temporal compreende um parâmetro de formato de ganho.
11. Método, de acordo com a reivindicação 10, caracterizado pelo fato de que compreende adicionalmente determinar valores do parâmetro de formato de ganho para cada um de uma pluralidade de subquadros do sinal de áudio.
12. Método, de acordo com a reivindicação 10, caracterizado pelo fato de que ajustar um valor particular do parâmetro de formato de ganho compreende computar um segundo valor do parâmetro de formato de ganho com base em uma soma de uma constante normalizada e uma porcentagem particular de um primeiro valor do parâmetro de formato de ganho, em que a porcentagem particular é preferencialmente dez por cento.
13. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que ajustar o valor do parâmetro de ganho de temporal limita a variabilidade do parâmetro de ganho temporal.
14. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a faixa de frequência superior da porção de banda alta inclui uma faixa de frequência entre 12 kilohertz (kHz) e 16 kHz.
15. Memória caracterizada pelo fato de que que compreende instruções armazenadas na mesma, as instruções sendo executadas por um computador para realizar o método conforme definido em qualquer uma das reivindicações 1 a 14.
16. Aparelho caracterizado pelo fato de que compreende: meios para filtrar pelo menos uma porção de um sinal de áudio para gerar uma pluralidade de saídas; meios para determinar uma soma de valores de energia que correspondem à pluralidade de saídas, a soma de valores de energia corresponde a uma faixa de frequência superior de uma porção de banda alta de um sinal de áudio; meios para realizar uma operação de ponderação com base na soma de valores de energia para determinar uma característica de sinal; meios para determinar se a característica de sinal satisfaz um limiar; meios para gerar um sinal de excitação de banda alta que corresponde à porção de banda alta; meios para gerar uma porção de banda alta sintetizada com base no sinal de excitação de banda alta; e meios para estimar um envelope temporal da porção de banda alta, em que os meios para estimar são configurados para: determinar um valor de um parâmetro de ganho temporal com base em uma comparação da porção de banda alta sintetizada com a porção de banda alta; e em resposta à característica de sinal satisfazer o limiar, ajustar o valor do parâmetro de ganho temporal, em que ajustar o valor do parâmetro de ganho temporal controla uma variabilidade do parâmetro de ganho temporal.
17. Aparelho, de acordo com a reivindicação 16, caracterizado pelo fato de que ajustar o valor do parâmetro de ganho de temporal limita a variabilidade do parâmetro de ganho temporal
18. Aparelho, de acordo com a reivindicação 16, caracterizado pelo fato de que a faixa de frequência superior da porção de banda alta inclui uma faixa de frequência entre 12 kilohertz (kHz) e 16 kHz.
BR112016030384-9A 2014-06-26 2015-06-05 Ajuste de ganho temporal baseado em característica de sinal de banda alta BR112016030384B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462017790P 2014-06-26 2014-06-26
US62/017,790 2014-06-26
US14/731,198 US9583115B2 (en) 2014-06-26 2015-06-04 Temporal gain adjustment based on high-band signal characteristic
US14/731,198 2015-06-04
PCT/US2015/034535 WO2015199954A1 (en) 2014-06-26 2015-06-05 Temporal gain adjustment based on high-band signal characteristic

Publications (2)

Publication Number Publication Date
BR112016030384A2 BR112016030384A2 (pt) 2017-08-22
BR112016030384B1 true BR112016030384B1 (pt) 2023-04-04

Family

ID=54931208

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112016030384-9A BR112016030384B1 (pt) 2014-06-26 2015-06-05 Ajuste de ganho temporal baseado em característica de sinal de banda alta

Country Status (12)

Country Link
US (2) US9583115B2 (pt)
EP (2) EP3161823B1 (pt)
JP (2) JP6312868B2 (pt)
KR (2) KR101849871B1 (pt)
CN (2) CN106663440B (pt)
AR (2) AR100848A1 (pt)
BR (1) BR112016030384B1 (pt)
CA (2) CA2952006C (pt)
ES (2) ES2690251T3 (pt)
HU (2) HUE039281T2 (pt)
TW (2) TWI598873B (pt)
WO (2) WO2015199955A1 (pt)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9542955B2 (en) * 2014-03-31 2017-01-10 Qualcomm Incorporated High-band signal coding using multiple sub-bands
US9583115B2 (en) * 2014-06-26 2017-02-28 Qualcomm Incorporated Temporal gain adjustment based on high-band signal characteristic
EP2980794A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder and decoder using a frequency domain processor and a time domain processor
EP2980795A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoding and decoding using a frequency domain processor, a time domain processor and a cross processor for initialization of the time domain processor
US10109284B2 (en) * 2016-02-12 2018-10-23 Qualcomm Incorporated Inter-channel encoding and decoding of multiple high-band audio signals
US10553222B2 (en) * 2017-03-09 2020-02-04 Qualcomm Incorporated Inter-channel bandwidth extension spectral mapping and adjustment
US10825467B2 (en) * 2017-04-21 2020-11-03 Qualcomm Incorporated Non-harmonic speech detection and bandwidth extension in a multi-source environment
US10891960B2 (en) * 2017-09-11 2021-01-12 Qualcomm Incorproated Temporal offset estimation
US11315584B2 (en) * 2017-12-19 2022-04-26 Dolby International Ab Methods and apparatus for unified speech and audio decoding QMF based harmonic transposer improvements
US11425258B2 (en) * 2020-01-06 2022-08-23 Waves Audio Ltd. Audio conferencing in a room
CN113820067B (zh) * 2021-11-22 2022-02-18 北京理工大学 强冲击传感器下阶跃响应动态特性计算方法及发生装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4301329A (en) 1978-01-09 1981-11-17 Nippon Electric Co., Ltd. Speech analysis and synthesis apparatus
JP2625998B2 (ja) 1988-12-09 1997-07-02 沖電気工業株式会社 特徴抽出方式
IT1257065B (it) 1992-07-31 1996-01-05 Sip Codificatore a basso ritardo per segnali audio, utilizzante tecniche di analisi per sintesi.
FR2742568B1 (fr) * 1995-12-15 1998-02-13 Catherine Quinquis Procede d'analyse par prediction lineaire d'un signal audiofrequence, et procedes de codage et de decodage d'un signal audiofrequence en comportant application
GB2318029B (en) * 1996-10-01 2000-11-08 Nokia Mobile Phones Ltd Audio coding method and apparatus
US6636829B1 (en) 1999-09-22 2003-10-21 Mindspeed Technologies, Inc. Speech communication system and method for handling lost frames
US6782360B1 (en) * 1999-09-22 2004-08-24 Mindspeed Technologies, Inc. Gain quantization for a CELP speech coder
US20050004793A1 (en) 2003-07-03 2005-01-06 Pasi Ojala Signal adaptation for higher band coding in a codec utilizing band split coding
US7146309B1 (en) * 2003-09-02 2006-12-05 Mindspeed Technologies, Inc. Deriving seed values to generate excitation values in a speech coder
KR100707174B1 (ko) * 2004-12-31 2007-04-13 삼성전자주식회사 광대역 음성 부호화 및 복호화 시스템에서 고대역 음성부호화 및 복호화 장치와 그 방법
MX2007012187A (es) * 2005-04-01 2007-12-11 Qualcomm Inc Sistemas, metodos y aparatos para deformacion en tiempo de banda alta.
DE602006004959D1 (de) * 2005-04-15 2009-03-12 Dolby Sweden Ab Zeitliche hüllkurvenformgebung von entkorrelierten signalen
TWI324336B (en) * 2005-04-22 2010-05-01 Qualcomm Inc Method of signal processing and apparatus for gain factor smoothing
US7707034B2 (en) * 2005-05-31 2010-04-27 Microsoft Corporation Audio codec post-filter
KR101393298B1 (ko) 2006-07-08 2014-05-12 삼성전자주식회사 적응적 부호화/복호화 방법 및 장치
US8135047B2 (en) * 2006-07-31 2012-03-13 Qualcomm Incorporated Systems and methods for including an identifier with a packet associated with a speech signal
PT2165328T (pt) 2007-06-11 2018-04-24 Fraunhofer Ges Forschung Codificação e descodificação de um sinal de áudio tendo uma parte do tipo impulso e uma parte estacionária
US8140331B2 (en) * 2007-07-06 2012-03-20 Xia Lou Feature extraction for identification and classification of audio signals
US9253568B2 (en) * 2008-07-25 2016-02-02 Broadcom Corporation Single-microphone wind noise suppression
JP5441577B2 (ja) * 2009-09-11 2014-03-12 三菱電機株式会社 冷蔵庫
FR2961937A1 (fr) 2010-06-29 2011-12-30 France Telecom Codage/decodage predictif lineaire adaptatif
JP2012144128A (ja) * 2011-01-11 2012-08-02 Toyota Motor Corp 燃料タンクの給油部構造
US8811601B2 (en) * 2011-04-04 2014-08-19 Qualcomm Incorporated Integrated echo cancellation and noise suppression
US9583115B2 (en) * 2014-06-26 2017-02-28 Qualcomm Incorporated Temporal gain adjustment based on high-band signal characteristic

Also Published As

Publication number Publication date
CA2952006C (en) 2019-05-21
CA2952214C (en) 2020-06-16
EP3161823B1 (en) 2018-07-18
KR20170023007A (ko) 2017-03-02
US20150380006A1 (en) 2015-12-31
JP2017523460A (ja) 2017-08-17
JP2017524980A (ja) 2017-08-31
WO2015199954A1 (en) 2015-12-30
CN106463136A (zh) 2017-02-22
EP3161825A1 (en) 2017-05-03
CN106663440B (zh) 2018-05-08
US9626983B2 (en) 2017-04-18
CN106663440A (zh) 2017-05-10
ES2690251T3 (es) 2018-11-20
EP3161825B1 (en) 2018-07-18
HUE039281T2 (hu) 2018-12-28
TW201606758A (zh) 2016-02-16
US20150380007A1 (en) 2015-12-31
KR101849871B1 (ko) 2018-04-17
JP6312868B2 (ja) 2018-04-18
US9583115B2 (en) 2017-02-28
HUE039698T2 (hu) 2019-01-28
TW201604865A (zh) 2016-02-01
AR100848A1 (es) 2016-11-02
EP3161823A1 (en) 2017-05-03
KR101809866B1 (ko) 2017-12-15
JP6196004B2 (ja) 2017-09-13
TWI598873B (zh) 2017-09-11
CA2952214A1 (en) 2015-12-30
WO2015199955A1 (en) 2015-12-30
AR100847A1 (es) 2016-11-02
CN106463136B (zh) 2018-05-08
KR20170023851A (ko) 2017-03-06
ES2690252T3 (es) 2018-11-20
CA2952006A1 (en) 2015-12-30
BR112016030384A2 (pt) 2017-08-22

Similar Documents

Publication Publication Date Title
ES2711524T3 (es) Generación de señal de excitación de banda alta
CA2952214C (en) Temporal gain adjustment based on high-band signal characteristic
BR112018002979B1 (pt) Controle de sinal-alvo de banda alta
US9984699B2 (en) High-band signal coding using mismatched frequency ranges
US9818419B2 (en) High-band signal coding using multiple sub-bands
BR112016030381B1 (pt) Método e aparelho para codificar um sinal de áudio e memória legível por computador
BR112016030386B1 (pt) Codificação de sinal de banda alta com o uso de faixas de frequência incompatíveis
BR112016022770B1 (pt) Codificação de sinal de banda alta com o uso de múltiplas subbandas

Legal Events

Date Code Title Description
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 05/06/2015, OBSERVADAS AS CONDICOES LEGAIS