BR112016025110B1 - Gerenciamento de perfil de voz e geração de sinal de fala - Google Patents

Gerenciamento de perfil de voz e geração de sinal de fala Download PDF

Info

Publication number
BR112016025110B1
BR112016025110B1 BR112016025110-5A BR112016025110A BR112016025110B1 BR 112016025110 B1 BR112016025110 B1 BR 112016025110B1 BR 112016025110 A BR112016025110 A BR 112016025110A BR 112016025110 B1 BR112016025110 B1 BR 112016025110B1
Authority
BR
Brazil
Prior art keywords
speech
signal
substitute
user
voice profile
Prior art date
Application number
BR112016025110-5A
Other languages
English (en)
Other versions
BR112016025110A2 (pt
Inventor
Sharath Manjunath
Daniel J. Sinder
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 BR112016025110A2 publication Critical patent/BR112016025110A2/pt
Publication of BR112016025110B1 publication Critical patent/BR112016025110B1/pt

Links

Images

Classifications

    • 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/003Changing voice quality, e.g. pitch or formants
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/033Voice editing, e.g. manipulating the voice of the synthesiser
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L17/00Speaker identification or verification
    • 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
    • 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/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use

Abstract

GERENCIAMENTO DE PERFIL DE VOZ E GERAÇÃO DE SINAL DE FALA. Um dispositivo inclui um receptor, uma memória e um processador. O receptor é configurado para receber um perfil de voz remoto. A memória é eletricamente acoplada ao receptor. A memória é configurada para armazenar um perfil de voz local associado a uma pessoa. O processador é eletricamente acoplado à memória e ao receptor. O processador é configurado para determinar que o perfil de voz remoto está associado à pessoa com base no conteúdo de fala associado ao perfil de voz remoto ou um identificador associado ao perfil de voz remoto. O processador também é configurado para selecionar o perfil de voz local para o gerenciamento de perfil com base na determinação. Um dispositivo para modificar um sinal convertido de texto em fala com base nos parâmetros demográficos e de modo de uso.

Description

REFERÊNCIA CRUZADA A PEDIDOS RELACIONADOS
[0001] O presente pedido reivindica prioridade do Pedido de Patente Provisório de propriedade conjunta sob no U.S. 61/986.701 depositado em 30 de abril de 2014 e do Pedido de Patente não Provisório sob no U.S. 14/700.009 depositado em 29 de abril de 2015, cujo conteúdo é expressamente incorporado no presente documento a título de referência em sua totalidade.
CAMPO
[0002] A presente revelação está, de modo geral, relacionada ao gerenciamento de perfil de voz e à geração de sinal de fala.
DESCRIÇÃO DA TÉCNICA RELACIONADA
[0003] Os avanços na tecnologia resultaram em dispositivos de computação menores e mais potentes. Por exemplo, existem atualmente uma variedade de dispositivos de computação pessoais portáteis, que incluem dispositivos de computação sem fio, como telefones sem fio portáteis, assistentes digitais pessoais (PDAs), e dispositivos de paginação que são pequenos, leves e facilmente transportados pelos usuários. Mais especificamente, os telefones sem fio portáteis, como telefones celulares e telefones de protocolo de internet (IP), podem comunicar pacotes de voz e dados através de redes sem fio. Adicionalmente, muitos desses telefones sem fio incluem outros tipos de dispositivos que são incorporados nos mesmos. Por exemplo, um telefone sem fio também pode incluir uma câmera estática digital, uma câmera de vídeo digital, um gravador digital e um reprodutor de arquivo de áudio. Além disso, tais telefones sem fio podem processar instruções executáveis, que incluem aplicativos de software, como um aplicativo de navegador da web, que pode ser usado para acessar a Internet. Como tais, esses telefones sem fio podem incluir capacidades de computação significativas.
[0004] A transmissão de voz por técnicas digitais é amplamente difundida, particularmente em distância longa e aplicações de telefone a rádio digital. Pode haver um interesse na determinação da menor quantidade de informações que pode ser enviada através de um canal enquanto mantém uma qualidade percebida da fala reconstruída. Se a fala for transmitida por amostragem e digitalização, uma taxa de dados na ordem de sessenta e quatro kilobits por segundo (kbps) pode ser usada para alcançar uma qualidade de fala de um telefone analógico. Através do uso de análise de fala, seguido pela codificação, transmissão e ressíntese em um receptor, uma redução significativa na taxa de dados pode ser alcançada.
[0005] Os dispositivos para compactar a fala podem ter uso em muitos campos de telecomunicações. Um campo exemplificativo consiste em comunicações sem fio. O campo de comunicações sem fio tem muitas aplicações que incluem, por exemplo, telefones sem cabo, paginação, loops locais sem fio, telefonia sem fio como sistemas de telefone de serviço de comunicação pessoal e celular (PCS), telefonia de Protocolo de Internet (IP) móvel e sistemas de comunicação de satélite. Uma aplicação particular é a telefonia sem fio para assinantes móveis.
[0006] Várias interfaces através do ar foram desenvolvidas para sistemas de comunicação sem fio que incluem, 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 e Divisão de Tempo Síncrono (TD-SCDMA). Em conexão com os mesmos, vários padrões nacionais e internacionais foram estabelecidos, os quais incluem, por exemplo, Serviço de Telefone Móvel Avançado (AMPS), Sistema Global para Comunicações Móveis (GSM), e Norma Provisória 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). A norma IS-95 e seus derivados, IS-95A, ANSI J-STD-008, e IS-95B (chamado, coletivamente, no presente documento de 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 através do ar de CDMA para sistemas de comunicação de telefonia de PCS ou celular.
[0007] A norma IS-95 evoluiu subsequentemente em sistemas "3G", como cdma2000 e WCDMA, os quais fornecem mais capacidade e serviços de dados de pacote de alta velocidade. Duas variações do cdma2000 são apresentadas pelos documentos IS-2000 (cdma2000 1xRTT) e IS-856 (cdma2000 1xEV-DO), que são emitidos por TIA. O sistema de comunicação cdma2000 1xRTT oferece uma taxa de dados de pico de 153 kbps à medida que o sistema de comunicação cdma2000 1xEV-DO define um conjunto de taxas de dados, que estão na faixa de 38,4 kbps a 2,4 Mbps. A norma de WCDMA está incorporada no Projeto de Parceria de 3a geração "3GPP", Documentos Nos 3G TS 25.211, 3G TS 25.212, 3G TS 25.213 e 3G TS 25.214. A especificação de Avançado Internacional de Telecomunicações móveis (IMT-Avançado) estabelece normas "4G". A especificação IMT-Avançado estabelece taxa de dados de pico para o serviço 4G em 100 megabits por segundo (Mbit/s) para comunicação de alta mobilidade (por exemplo, de trens e carros) e 1 gigabit por segundo (Gbit/s) para comunicação de baixa mobilidade (por exemplo, de pedestres e usuários estacionários).
[0008] Os dispositivos que empregam técnicas para compactar fala extraindo parâmetros que se referem a um modelo de geração de fala humana são chamados de codificadores de fala. Os codificadores de fala podem compreender criptador e um decodificador. O criptador divide o sinal de fala entrante em blocos de tempo, ou quadros de análise. A duração de cada segmento no tempo (ou "quadro") pode ser selecionada para ser curta o suficiente para que o envelope espectral do sinal possa permanecer relativamente estacionário. Por exemplo, uma extensão de quadro é vinte milissegundos, que corresponde a 160 amostras em uma taxa de amostragem de oito kilohertz (kHz), embora qualquer extensão de quadro ou taxa de amostragem considerados adequados para o aplicativo particular possam ser usados.
[0009] O criptador analisa o quadro de fala entrante 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ários. 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 os pacotes de dados, desquantiza os pacotes de dados processados para produzir os parâmetros, e ressintetiza os quadros de fala com o uso dos parâmetros desquantizados.
[0010] A função do codificador de fala é compactar o sinal de fala digitalizado em um sinal de baixa taxa de bit removendo-se redundâncias naturais inerentes na fala. A compactação digital pode ser alcançada representando-se um quadro de fala de entrada com um conjunto de parâmetros e empregando-se a quantização para representar os parâmetros com um conjunto de bits. Se o quadro de fala de entrada tiver um número de bits Ni e um pacote de dados produzido pelo codificador de fala tiver um número de bits No, o fator de compactação alcançado pelo codificador de fala é Cr = Ni/No. O desafio é reter qualidade de voz alta da fala decodificada enquanto alcança o fator de compactação alvo. O desempenho de um codificador de fala depende de (1) quão bem o modelo de fala, ou a combinação dos processos de análise e síntese descritos acima, se desempenha, e (2) quão bem o processo de quantização de parâmetro é desempenhado na taxa de bits alvo de No bits por quadro. A meta do modelo de fala é, portanto, capturar a essência do sinal de fala, ou a qualidade de voz alvo, com um pequeno conjunto de parâmetros para cada quadro.
[0011] Os codificadores de fala utilizam, em geral, um conjunto de parâmetros (que inclui vetores) para descrever o sinal de fala. Um bom conjunto de parâmetros fornece, idealmente, uma largura de banda de sistema baixa para a reconstrução de um sinal de fala percentualmente preciso. A altura, potência de sinal, envelope espectral (ou formantes), amplitude e espectros de fase são exemplos dos parâmetros de codificação de fala.
[0012] Os codificadores de fala podem ser implantados como codificadores de domínio de tempo, que tentam capturar a forma de onda de domínio de tempo empregando-se o processamento de alta resolução temporal para criptar pequenos segmentos de fala (por exemplo, 5 milissegundos (ms) subquadros) de uma vez. Para cada subquadro, um representativo de alta precisão de um espaço de livro de códigos é encontrado por meio de um algoritmo de busca. Alternativamente, os codificadores de fala podem ser implantados como codificadores de domínio de frequência, que tentam capturar o espectro de fala de curto prazo do quadro de fala 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 fala a partir dos parâmetros espectrais. O quantizador de parâmetro conservar os parâmetros representando-os com representações armazenadas de vetores de código de acordo com técnicas de quantização conhecidas.
[0013] Um codificador de fala de domínio de tempo é o codificador Preditivo Linear Excitado por Códigos (CELP). Em um codificador CELP, as correlações de curto prazo, ou redundâncias, no sinal de fala são removidas por uma análise de Previsão Linear (LP), que encontra os coeficientes de um filtro de formante de curto prazo. A aplicação do filtro de previsão de curto prazo ao quadro de fala entrante gera um sinal de resíduo de LP, que é adicionalmente modelado e quantizado com parâmetros de filtro de previsão de longo prazo e um livro de códigos estocástico subsequente. Portanto, codificação de CELP divide a tarefa de criptar a forma de onda de domínio de tempo nas tarefas separadas de criptar os coeficientes de filtro de curto prazo de LP 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 em que as diferentes taxas de bits são usadas para diferentes tipos de conteúdo 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 CELP pode depender de um número de bits alto, No, por quadro para conservar a precisão da forma de onda 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 grande (por exemplo, 8 kbps ou acima). Em taxas de bits baixas (por exemplo, 4 kbps e menos), os codificadores de domínio de tempo pode falhar em reter desempenho robusto e alta qualidade devido ao número limitado de bits disponíveis. Em taxas de bits baixas, o espaço de livro de códigos limitado anexa a capacidade de correspondência de forma de onda dos codificadores de domínio de tempo, que são implementados em aplicativos comerciais de taxa superior. Por conseguinte, apesar dos aprimoramentos ao longo do tempo, muitos sistemas de codificação de CELP que operam em taxas de bits baixas sofrem da distorção perceptivelmente significativa distinguida como ruído.
[0015] Uma alternativa para os codificadores CELP em taxas de bits baixas é o codificador "Preditivo Linear Excitado por Ruído" (NELP), que opera sob princípios semelhantes como um codificador CELP. Os codificadores NELP usam um sinal de ruído pseudoaleatório filtrado para modelar a fala, ao invés de um livro de códigos. Visto que o NELP usa um modelo mais simples para a fala codificada, o NELP alcançar uma taxa de bits inferior em relação ao CELP. O NELP pode ser usado para compactar ou representar silêncio ou fala não vozeada.
[0016] Os sistemas de codificação que operam em taxas na ordem de 2,4 kbps são, em geral, paramétricos por natureza. Isto é, tais sistemas de codificação operam transmitindo-se parâmetros que descrevem o período de altura e o envelope espectral (ou formantes) do sinal de fala em intervalos regulares. Os codificadores assim chamados paramétricos que consistem no sistema de vocoder de LP são ilustrativos dos mesmos.
[0017] Os vocoders de LP modelam um sinal de fala vozeada com um único pulso por período de pitch. Essa técnica básica pode ser melhorada para incluir informações de transmissão sobre o envelope espectral, dentre outras coisas. Embora os vocoders de LP forneçam, em geral, desempenho razoável, os mesmos podem introduzir distorção perceptivelmente significativa, distinguida como zumbido.
[0018] Nos últimos anos, codificadores que são híbridos surgiram de ambos os codificadores de forma de onda e codificadores paramétricos. Os codificadores assim chamados híbridos que consistem no sistema de codificação de fala de interpolação de forma de onda protótipo (PWI) são ilustrativos dos mesmos. O sistema de codificação de PWI também pode ser conhecido como um codificador de fala de período de pitch protótipo (PPP). Um sistema de codificação de PWI fornece um método eficaz para codificar fala vozeada. O conceito básico de PWI é extrair um ciclo de pitch representativo (a forma de onda protótipo) em intervalos fixos, para transmitir sua descrição, e para reconstruir o sinal de fala interpolando-se entre as formas de onda de protótipo. O método de PWI pode operar no sinal residual de LP ou no sinal de fala.
[0019] Pode haver um interesse de pesquisa e interesse comercial no aprimoramento da qualidade de áudio de um sinal de fala (por exemplo, um sinal de fala codificado, um sinal de fala reconstruído ou ambos). Por exemplo, um dispositivo de comunicação pode receber um sinal de fala com qualidade de voz menor do que ideal. Para fins de ilustração, o dispositivo de comunicação pode receber o sinal de fala a partir de outro dispositivo de comunicação durante uma chamada de voz. A qualidade de chamada de voz pode sofrer devido a vários motivos, como ruído ambiental (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 bits, etc.
SUMÁRIO
[0020] Em um aspecto particular, um dispositivo inclui um receptor, uma memória e um processador. O receptor é configurado para receber um perfil de voz remoto. A memória é eletricamente acoplada ao receptor. A memória é configurada para armazenar um perfil de voz local associado a uma pessoa. O processador é eletricamente acoplado à memória e ao receptor. O processador é configurado para determinar que o perfil de voz remoto está associado à pessoa com base no conteúdo de fala associado ao perfil de voz remoto ou um identificador associado ao perfil de voz remoto. O processador também é configurado para selecionar o perfil de voz local para o gerenciamento de perfil com base na determinação.
[0021] Em outro aspecto, um método para comunicação incluir receber um perfil de voz remoto em um dispositivo que armazena um perfil de voz local, em que o perfil de voz local está associado a uma pessoa. O método também inclui determinar que o perfil de voz remoto está associado à pessoa com base em uma comparação do perfil de voz remoto e do perfil de voz local, ou com base em um identificador associado ao perfil de voz remoto. O método inclui adicionalmente selecionar, no dispositivo, o perfil de voz local para o gerenciamento de perfil com base na determinação.
[0022] Em outro aspecto, um dispositivo inclui uma memória e um processador. A memória é configurada para armazenar uma pluralidade de sinais de fala substitutos. O processador é eletricamente acoplado à memória. O processador é configurado para receber um sinal de fala a partir de um conversor de texto em fala. O processador também é configurado para detectar um modo de uso de uma pluralidade de modos de uso. O processador é configurado adicionalmente para selecionar um domínio demográfico dentre uma pluralidade de domínios demográficos. O processador também é configurado para selecionar um sinal de fala substituto dentre a pluralidade de sinais de fala substitutos com base no sinal de fala, no domínio demográfico e no modo de uso. O processador é configurado adicionalmente para gerar um sinal de fala processado com base no sinal de fala substituto. O processador também é configurado para fornecer o sinal de fala processado para pelo menos um alto-falante.
[0023] Outros aspectos, vantagens e recursos da presente revelação se tornarão evidentes após a revisão do pedido, que inclui as seguintes seções: Breve Descrição dos Desenhos, Descrição Detalhada e as Reivindicações.
BREVE DESCRIÇÃO DOS DESENHOS
[0024] A Figura 1 é um diagrama de blocos de um aspecto ilustrativo particular de um sistema que é operável para substituir sinais de fala;
[0025] A Figura 2 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0026] A Figura 3 é um diagrama de um aspecto ilustrativo particular de uma interface de usuário que pode ser exibida por um sistema que é operável para substituir sinais de fala;
[0027] A Figura 4 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0028] A Figura 5 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0029] A Figura 6 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0030] A Figura 7 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0031] A Figura 8 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0032] A Figura 9 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0033] A Figura 10 é um diagrama de um aspecto ilustrativo de um banco de dados que pode ser usado por um sistema operável para substituir sinais de fala;
[0034] A Figura 11 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0035] A Figura 12 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0036] A Figura 13 é um diagrama de outro aspecto ilustrativo de um sistema que é operável para substituir sinais de fala;
[0037] A Figura 14 é um fluxograma que ilustra um aspecto particular de um método para a substituição de um sinal de fala;
[0038] A Figura 15 é um fluxograma que ilustra um aspecto particular de um método para a aquisição de uma pluralidade de sinais de fala substitutos e pode corresponder à operação 802 da Figura 11;
[0039] A Figura 16 é um fluxograma que ilustra outro aspecto de um método para a substituição de um sinal de fala;
[0040] A Figura 17 é um fluxograma que ilustra outro aspecto de um método para a geração de uma interface de usuário;
[0041] A Figura 18 é um fluxograma que ilustra outro aspecto de um método para a substituição de um sinal de fala; e
[0042] A Figura 19 é um diagrama de blocos de um aspecto ilustrativo particular de um dispositivo que é operável para substituir sinais de fala de acordo com os sistemas e métodos das Figuras 1 a 18.
DESCRIÇÃO DETALHADA
[0043] Os princípios descritos no presente documento podem ser aplicados, por exemplo, a uma fonte de ouvido com microfone, um fone, ou outro dispositivo de áudio que é configurado para realizar uma substituição de sinal de fala. A menos que seja expressamente limitado por seu contexto, o termo "sinal" é usado no presente documento para indicar quaisquer de seus significados comuns, inclusive um estado de uma localização de memória (ou conjunto de localizações de memória) como expresso em um fio, barramento ou outro meio de transmissão. A menos que seja expressamente limitado por seu contexto, o termo "gerar" é usado no presente documento para indicar quaisquer de seus significados comuns, como computar ou de outra forma produzir. A menos que seja expressamente limitado por seu contexto, o termo "calcular" é usado no presente documento para indicar quaisquer de seus significados comuns, como computar, avaliar, suavizar, e/ou selecionar partir de uma pluralidade de valores. A menos que seja expressamente limitado por seu contexto, o termo "obter" é usado para indicar quaisquer de seus significados comuns, como calcular, derivar, receber (por exemplo, de outro componente, bloco ou dispositivo), e/ou recuperar (por exemplo, a partir de um registro de memória ou um arranjo de elementos de armazenamento).
[0044] A menos que seja expressamente limitado por seu contexto, o termo "produzir" é usado para indicar quaisquer de seus significados comuns, como calcular, gerar e/ou fornecer. A menos que seja expressamente limitado por seu contexto, o termo "fornecer" é usado para indicar quaisquer de seus significados comuns, como calcular, gerar e/ou produzir. A menos que seja expressamente limitado por seu contexto, o termo "acoplado" é usado para indicar uma conexão física ou elétrica direta ou indireta. Se a conexão for indireta, é bem compreendido por uma pessoa que tem habilidade comum na técnica, que podem haver outros blocos ou componentes entre as estruturas que estão "acopladas".
[0045] O termo "configuração" pode ser usado com referência a um método, aparelho/dispositivo e/ou sistema como indicado por seu contexto particular. Quando o termo "que compreende" for usado na presente descrição e reivindicações, o mesmo não exclui outros elementos ou operações. O termo "com base em" (como em "A tem por base o B") é usado para indicar quaisquer de seus significados comuns, que incluem os casos (i) "com base em pelo menos" (por exemplo, "A tem por base pelo menos B") e, se adequado no contexto particular, (ii) "igual a" (por exemplo, "A é igual a B"). No caso (i) em que "A tem por base B" inclui "com base em pelo menos", isso pode incluir a configuração em que "A é acoplado a B". De modo semelhante, o termo "em resposta a" é usado para indicar quaisquer de seus significados comuns, que incluem "em resposta a pelo menos". O termo "pelo menos um" é usado para indicar quaisquer de seus significados comuns, que incluem "um ou mais". O termo "pelo menos dois" é usado para indicar quaisquer de seus significados comuns, que incluem "dois ou mais".
[0046] Os termos "aparelho" e "dispositivo" são usados de modo genérico e intercambiável, salvo indicação em contrário pelo contexto particular. Salvo indicado de outra forma, qualquer revelação de uma operação de um aparelho que tem um recurso particular também é expressamente destinada a revelar um método que tem um recurso análogo (e vice-versa), e qualquer revelação de uma operação de um aparelho de acordo com uma configuração particular também é expressamente destinado a revelar um método de acordo com uma configuração análoga (e vice- versa). Os termos "método", "processo", "procedimento" e "técnica" são usados de modo genérico e intercambiável, salvo indicado de outra forma pelo contexto particular. Os termos "elemento" e "módulo" podem ser usados para indicar uma porção de uma configuração maior. Qualquer incorporação a título de referência de uma porção de um documento também será compreendida para incorporar definições de termos ou variáveis que são referenciadas dentro da porção, em que tais definições aparecem em outro lugar no documento, bem como quaisquer figuras referenciadas na porção incorporada.
[0047] Conforme usado no presente documento, o termo "dispositivo de comunicação" se refere a um dispositivo eletrônico que pode ser usado para comunicação de voz e/ou dados através de uma rede de comunicação sem fio. Os exemplos de dispositivos de comunicação incluem telefones celulares, assistentes digitais pessoais (PDAs), dispositivos portáteis, fones de ouvido com microfone, modens sem fio, computadores do tipo laptop, computadores pessoais, etc.
[0048] Referindo-se à Figura 1, um aspecto ilustrativo particular de um sistema operável para substituir sinais de fala é revelado e designado genericamente como 100. O sistema 100 pode incluir um primeiro dispositivo 102 em comunicação com um ou mais outros dispositivos (por exemplo, um dispositivo móvel 104, um computador desktop 106, etc.) por meio de uma rede 120. O dispositivo móvel 104 pode estar acoplado ou em comunicação com um microfone 146. O computador desktop 106 pode estar acoplado ou em comunicação com um microfone 144. O primeiro dispositivo 102 pode estar acoplado a um ou mais alto-falantes 142. O primeiro dispositivo 102 pode incluir um módulo de processamento de sinal 122 e um primeiro banco de dados 124. O primeiro banco de dados 124 pode ser configurado para armazenar sinais de fala substitutos 112.
[0049] O primeiro dispositivo 102 pode incluir menos ou mais componentes do que ilustrado na Figura 1. Por exemplo, o primeiro dispositivo 102 pode incluir um ou mais processadores, uma ou mais unidades de memória ou ambos. O primeiro dispositivo 102 pode incluir um sistema de computação distribuído ou em rede. Em um aspecto ilustrativo particular, o primeiro dispositivo 102 pode incluir 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 digital pessoal, 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 de vídeo digital (DVD), um sintonizador, uma câmera, um dispositivo de navegação ou uma combinação dos mesmos. Tais dispositivos podem incluir uma interface de usuário (por exemplo, uma tela sensível ao toque, capacidade de reconhecimento de voz, ou outras capacidades de interface de usuário).
[0050] Durante a operação, o primeiro dispositivo 102 pode receber um sinal de fala de usuário (por exemplo, o primeiro sinal de fala de usuário 130, o segundo sinal de fala de usuário 132 ou ambos). Por exemplo, um primeiro usuário 152 pode estar engajado em uma chamada de voz com um segundo usuário 154. O primeiro usuário 152 pode usar o primeiro dispositivo 102 e o segundo usuário 154 pode usar o dispositivo móvel 104 para a chamada de voz. Durante a chamada de voz, o segundo usuário 154 pode falar no microfone 146 acoplado ao dispositivo móvel 104. O primeiro sinal de fala de usuário 130 pode corresponder a múltiplas palavras, uma palavra, ou uma porção de uma palavra falada pelo segundo usuário 154. O dispositivo móvel 104 pode receber o primeiro sinal de fala de usuário 130, por meio do microfone 146, a partir do segundo usuário 154. Em um aspecto particular, o microfone 146 pode capturar um sinal de áudio e um conversor de analógico em digital (ADC) pode converter o sinal de áudio capturado a partir de uma forma de onda analógica em uma forma de onda digital compreendida das amostras de áudio digital. As amostras de áudio digital podem ser processadas por um processador de sinal digital. Um ajustador de ganho pode ajustar um ganho (por exemplo, da forma de onda analógica ou a forma de onda digital) aumentando-se ou reduzindo-se um nível de amplitude de um sinal de áudio (por exemplo, a forma de onda analógica ou a forma de onda digital). Os ajustadores de ganho podem operar no domínio analógico ou digital. Por exemplo, um ajustador de ganho pode operar no domínio digital e pode ajustar as amostras de áudio digital produzidas pelo conversor de analógico em digital. Após o ajuste de ganho, um cancelador de eco pode reduzir qualquer eco que possa ter sido criado por uma saída de um alto-falante que entra no microfone 146. As amostras de áudio digital podem ser "compactadas" por um vocoder (um criptador-decodificador de voz). A saída do cancelador de eco pode estar acoplada a blocos de pré- processamento de vocoder, por exemplo, filtros, processadores de ruído, conversores de taxa, etc. Um criptador do vocoder pode compactar as amostras de áudio digital e formar um pacote de transmissão (uma representação dos bits compactados das amostras de áudio digital). O pacote de transmissão pode ser armazenado em uma memória que pode ser compartilhada com um processador do dispositivo móvel 104. O processador pode ser um processador de controle que está em comunicação com um processador de sinal digital.
[0051] O dispositivo móvel 104 pode transmitir o primeiro sinal de fala de usuário 130 ao primeiro dispositivo 102 por meio da rede 120. Por exemplo, o dispositivo móvel 104 pode incluir um transceptor. O transceptor pode modular alguma forma (outras informações podem ser anexadas ao pacote de transmissão) do pacote de transmissão e enviar as informações moduladas através do ar por meio de uma antena.
[0052] O módulo de processamento de sinal 122 do primeiro dispositivo 102 pode receber o primeiro sinal de fala de usuário 130. Por exemplo, uma antena do primeiro dispositivo 102 pode receber alguma forma de pacotes entrantes que compreendem o pacote de transmissão. O pacote de transmissão pode ser "descompactado" por um decodificador de um vocoder no primeiro dispositivo 102. A forma de onda descompactada pode ser denominada como amostras de áudio reconstruídas. As amostras de áudio reconstruídas podem ser pós-processadas por blocos de pós- processamento de vocoder e podem ser usadas por um cancelador de eco para remover ecos. Pelo bem da clareza, o decodificador do vocoder e dos blocos de pós-processamento de vocoder podem ser denominados como um módulo decodificador de vocoder. Em algumas configurações, uma saída do cancelador de eco pode ser processada pelo módulo de processamento de sinal 122. Alternativamente, em outras configurações, a saída do módulo decodificador de vocoder pode ser processada pelo módulo de processamento de sinal 122.
[0053] A qualidade de áudio do primeiro sinal de fala de usuário 130 como recebida pelo primeiro dispositivo 102 pode ser inferior à qualidade de áudio do primeiro sinal de fala de usuário 130 que o segundo usuário 154 enviou. A qualidade de áudio do primeiro sinal de fala de usuário 130 pode deteriorar durante a transmissão para o primeiro dispositivo 102 devido a vários motivos. Por exemplo, o segundo usuário 154 pode estar em uma localização barulhenta (por exemplo, uma rua movimentada, um show, etc.) durante a chamada de voz. O primeiro sinal de fala de usuário 130 recebido pelo microfone 146 pode incluir sons além das palavras faladas pelo segundo usuário 154. Como outro exemplo, o microfone 146 pode ter capacidade limitada para capturar som, o dispositivo móvel 104 pode processar som de um modo que perde algumas informações de som, pode haver perda de pacote dentro da rede 120 durante a transmissão de pacotes correspondentes ao primeiro sinal de fala de usuário 130, ou qualquer combinação dos mesmos.
[0054] O módulo de processamento de sinal 122 pode comparar uma porção do sinal de fala (por exemplo, o primeiro sinal de fala de usuário 130, o segundo sinal de fala de usuário 132 ou ambos) em um ou mais dos sinais de fala substitutos 112. Por exemplo, o primeiro sinal de fala de usuário 130 pode corresponder a uma palavra (por exemplo, "cat") falada pelo segundo usuário 154 e uma primeira porção 162 do primeiro sinal de fala de usuário 130 pode corresponder a uma porção (por exemplo, "g", "a", "t", "o", "ca", "at" ou "cat") da palavra. O módulo de processamento de sinal 122 pode determinar que a primeira porção 162 é correspondente a um primeiro sinal de fala substituto 172 dos sinais de fala substitutos 112 com base na comparação. Por exemplo, a primeira porção 162 e o primeiro sinal de fala substituto 172 podem representar um som comum (por exemplo, "g"). O som comum pode incluir um fonema, um dífono, um trífono, uma sílaba, uma palavra, ou uma combinação dos mesmos.
[0055] Em um aspecto particular, o módulo de processamento de sinal 122 pode determinar que a primeira porção 162 é correspondente ao primeiro sinal de fala substituto 172 até mesmo quando a primeira porção 162 e o primeiro sinal de fala substituto 172 do não representam um som comum, como um conjunto finito de amostras. A primeira porção 162 pode corresponder a um primeiro conjunto de amostras (por exemplo, a palavra "do") e o primeiro sinal de fala substituto 172 pode corresponder a um segundo conjunto de amostras (por exemplo, a palavra "to"). Por exemplo, o módulo de processamento de sinal 122 pode determinar que a primeira porção 162 tem uma semelhança superior em relação ao primeiro sinal de fala substituto 172 em comparação a outros sinais de fala substitutos dos sinais de fala substitutos 112.
[0056] O primeiro sinal de fala substituto 172 pode ter uma qualidade de áudio superior (por exemplo, um valor de razão de sinal para ruído superior) em relação à primeira porção 162. Por exemplo, os sinais de fala substitutos 112 pode corresponder a porções ou palavras gravadas anteriormente de palavras faladas pelo segundo usuário 154, conforme descrito adicionalmente com referência à Figura 2.
[0057] Em um aspecto particular, o módulo de processamento de sinal 122 pode determinar que a primeira porção 162 é correspondente ao primeiro sinal de fala substituto 172 comparando-se uma forma de onda correspondente à primeira porção 162 a outra forma de onda correspondente ao primeiro sinal de fala substituto 172. Em um aspecto particular, o módulo de processamento de sinal 122 pode comparar um subconjunto de recursos correspondente à primeira porção 162 a outro subconjunto de recursos correspondente ao primeiro sinal de fala substituto 172. Por exemplo, o módulo de processamento de sinal 122 pode determinar que a primeira porção 162 é correspondente ao primeiro sinal de fala substituto 172 comparando-se a pluralidade de parâmetros de fala correspondente à primeira porção 162 a outra pluralidade de parâmetros de fala correspondente ao primeiro sinal de fala substituto 172. A pluralidade de parâmetros de fala pode incluir um parâmetro de pitch, um parâmetro de energia, uma parâmetro de codificação preditiva linear (LPC), coeficientes cepstrais de frequência mel (MFCC), pares de linhas espectrais (LSP), frequências de linhas espectrais (LSF), um cepstral, informações de linhas espectrais (LSI), um parâmetro de transformada discreta de cosseno (DCT) (por exemplo, coeficiente), um parâmetro de transformada de fourier discreta (DFT), um parâmetro de transformada rápida de fourier (FFT), frequências formantes, ou qualquer combinação das mesmas. O módulo de processamento de sinal 122 pode determinar valores dentre uma pluralidade de parâmetros de fala com o uso de pelo menos um dentre um quantizador de vetor, um modelo oculto de markov (HMM), ou um modelo de mistura gaussiano (GMM).
[0058] O módulo de processamento de sinal 122 pode gerar um sinal de fala processado (por exemplo, um primeiro sinal de fala processado 116) substituindo-se a primeira porção 162 do primeiro sinal de fala de usuário 130 pelo primeiro sinal de fala substituto 172. Por exemplo, o módulo de processamento de sinal 122 pode copiar o primeiro sinal de fala de usuário 130 e pode remover a primeira porção 162 a partir do sinal de fala de usuário copiado. O módulo de processamento de sinal 122 pode gerar o primeiro sinal de fala processado 116 concatenando-se (por exemplo, unindo) o primeiro sinal de fala substituto 172 e o sinal de fala de usuário copiado em uma localização do sinal de fala de usuário copiado em que a primeira porção 162 foi removida.
[0059] Em um aspecto particular, o primeiro sinal de fala processado 116 pode incluir múltiplos sinais de fala substitutos. Em um aspecto particular, o módulo de processamento de sinal 122 pode unir o primeiro sinal de fala substituto 172 e outro sinal de fala substituto para gerar um sinal de fala substituto intermediário. Nesse aspecto, o módulo de processamento de sinal 122 pode unir o sinal de fala substituto intermediário e o sinal de fala de usuário copiado em uma localização em que a primeira porção 162 foi removida. Em um aspecto alternativo, o primeiro sinal de fala processado 116 pode ser gerado de modo iterativo. Durante uma primeira iteração, o módulo de processamento de sinal 122 pode gerar um sinal de fala processado intermediário unindo-se o outro sinal de fala substituto e o sinal de fala de usuário copiado em uma localização em que uma segunda porção é removida do sinal de fala de usuário copiado. O sinal de fala processado intermediário pode corresponder ao primeiro sinal de fala de usuário 130 durante uma subsequente iteração. Por exemplo, o módulo de processamento de sinal 122 pode remover a primeira porção 162 do sinal de fala processado intermediário. O módulo de processamento de sinal 122 pode gerar o primeiro sinal de fala processado 116 unindo-se o primeiro sinal de fala substituto 172 e o sinal de fala processado intermediário na localização do sinal em que a primeira porção 162 foi removida.
[0060] Tais operações de união e cópia podem ser realizadas por um processador em uma representação digital de um sinal de áudio. Em um aspecto particular, o primeiro sinal de fala processado 116 pode ser amplificado ou suprimido por um ajustador de ganho. O primeiro dispositivo 102 pode emitir o primeiro sinal de fala processado 116, por meio dos alto-falantes 142, para o primeiro usuário 152. Por exemplo, a saída do ajustador de ganho pode ser convertida a partir de um sinal digital em um sinal analógico por um conversor de digital em analógico, e reproduzido por meio dos alto-falantes 142.
[0061] Em um aspecto particular, o dispositivo móvel 104 pode modificar um ou mais parâmetros de fala associados ao primeiro sinal de fala de usuário 130 antes de enviar o primeiro sinal de fala de usuário 130 para o primeiro dispositivo 102. Em um aspecto particular, o dispositivo móvel 104 pode incluir o módulo de processamento de sinal 122. Nesse aspecto, os um ou mais parâmetros de fala podem ser modificados pelo módulo de processamento de sinal 122 do dispositivo móvel 104. Em um aspecto particular, o dispositivo móvel 104 pode ter acesso aos sinais de fala substitutos 112. Por exemplo, o dispositivo móvel 104 pode ter recebido anteriormente os sinais de fala substitutos 112 a partir de um servidor, conforme descrito adicionalmente com referência à Figura 2.
[0062] O dispositivo móvel 104 pode modificar os um ou mais parâmetros de fala para auxiliar o módulo de processamento de sinal 122 em encontrar uma correspondência quando se compara a primeira porção 162 do primeiro sinal de fala de usuário 130 aos sinais de fala substitutos 112. Por exemplo, o dispositivo móvel 104 pode determinar que o primeiro sinal de fala substituto 172 (por exemplo, correspondente a "c" de "catatônico") é uma melhor correspondência para a primeira porção 162 (por exemplo, "g") do primeiro sinal de fala de usuário 130 (por exemplo, "cat") em relação ao segundo sinal de fala substituto 174 (por exemplo, correspondente a "c" de "cola"). O dispositivo móvel 104 pode modificar um ou mais parâmetros de fala da primeira porção 162 para auxiliar o módulo de processamento de sinal 122 na determinação de que o primeiro sinal de fala substituto 172 é uma melhor correspondência do que o segundo sinal de fala substituto 174. Por exemplo, o dispositivo móvel 104 pode modificar um parâmetro de pitch, um parâmetro de energia, um parâmetro de codificação preditiva linear (LPC), ou uma combinação dos mesmos, de modo que o parâmetro modificado esteja mais próximo a um parâmetro correspondente do primeiro sinal de fala substituto 172 do que a um parâmetro correspondente do segundo sinal de fala substituto 174.
[0063] Em um aspecto particular, o dispositivo móvel 104 pode enviar um ou mais parâmetros de transmissão ao primeiro dispositivo 102. Em um aspecto particular, o módulo de processamento de sinal 122 do dispositivo móvel 104 pode enviar os parâmetros de transmissão ao primeiro dispositivo 102. Os parâmetros de transmissão podem identificar um sinal de fala substituto particular (por exemplo, o primeiro sinal de fala substituto 172) que o dispositivo móvel 104 determinou ser uma correspondência para a primeira porção 162. Como outro exemplo, o parâmetro de transmissão pode incluir um número de índice de entrada de tabela de quantizador de vetor particular para auxiliar o primeiro dispositivo 102 na localização de um quantizador de vetor particular em uma tabela de quantizador de vetor.
[0064] Os parâmetros de fala modificados, os parâmetros de transmissão ou ambos, podem auxiliar o módulo de processamento de sinal 122 na seleção de um sinal de fala substituto que é correspondente à primeira porção 162. A eficácia de geração de um sinal de fala processado (por exemplo, o primeiro sinal de fala processado 116, o segundo sinal de fala processado 118) também pode aumentar. Por exemplo, o módulo de processamento de sinal 122 pode não comparar a primeira porção 162 a cada um dos sinais de fala substitutos 112 quando os parâmetros de transmissão identificam um sinal de fala substituto particular (por exemplo, o primeiro sinal de fala substituto 172), resultando em uma eficácia maior na geração do primeiro sinal de fala processado 116.
[0065] Em um aspecto particular, o módulo de processamento de sinal 122 do primeiro dispositivo 102 pode usar um algoritmo de previsão de palavra para prever uma palavra que pode incluir a primeira porção 162. Por exemplo, o algoritmo de previsão de palavra pode prever a palavra com base nas palavras que precedia o primeiro sinal de fala de usuário 130. Para fins de ilustração, o algoritmo de previsão de palavra pode determinar a palavra com base na concordância verbo-nominal, relações de palavras, regras gramáticas, ou uma combinação dos mesmos, relacionados à palavra e às palavras precedentes. Como outro exemplo, o algoritmo de previsão de palavra pode determinar a palavra com base em uma frequência da palavra nas palavras precedentes, em que a palavra inclui o som correspondente à primeira porção 162. Para fins de ilustração, as palavras particulares podem ser repetidas com frequência em uma conversação particular. O módulo de processamento de sinal 122 pode prever que a primeira porção 162 correspondente a "c" é parte de uma palavra "cat" com base nas palavras precedentes que incluem a palavra "cat" mais do que um número de vezes limite (por exemplo, 2). O módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 172 com base na palavra prevista. Por exemplo, o primeiro sinal de fala substituto 172, outro sinal de fala substituto dos sinais de fala substitutos 112 e a primeira porção 162 podem todos corresponder a um som comum (por exemplo, "c"). O módulo de processamento de sinal 122 pode determinar que o primeiro sinal de fala substituto 172 foi gerado a partir de "catatônico" e o outro sinal de fala substituto foi gerado a partir de "cola". O módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 172 favorecendo o outro sinal de fala substituto 172 com base na determinação de que o primeiro sinal de fala substitute 172 está mais próximo à palavra prevista do que o outro sinal de fala substituto.
[0066] Em um aspecto particular, o módulo de processamento de sinal 122 pode determinar que o sinal de fala processado (por exemplo, o primeiro sinal de fala processado 116 ou o segundo sinal de fala processado 118) não satisfaz um limite de sinal de fala. Por exemplo, o módulo de processamento de sinal 122 pode determinar que uma variação de um parâmetro de fala do primeiro sinal de fala processado 116 não satisfaz uma variação de parâmetro de fala limite. Para fins de ilustração, a variação do parâmetro de fala pode corresponder a uma transição entre o primeiro sinal de fala substituto 172 e outra porção do primeiro sinal de fala processado 116. Em um aspecto particular, o módulo de processamento de sinal 122 pode modificar o primeiro sinal de fala processado 116 com o uso de um algoritmo de suavização para reduzir a variação do parâmetro de fala. Em outro aspecto particular, o módulo de processamento de sinal 122 pode descartar o primeiro sinal de fala processado 116 em resposta à variação do parâmetro de fala que não satisfaz o parâmetro de fala limite. Nesse aspecto, o módulo de processamento de sinal 122 pode emitir o primeiro sinal de fala de usuário 130 por meio dos alto- falantes 142 para o primeiro usuário 152.
[0067] Em um aspecto particular, o primeiro dispositivo 102 pode comutar entre emitir um sinal de fala processado (por exemplo, o primeiro sinal de fala processado 116, o segundo sinal de fala processado 118) e um sinal de fala de usuário (por exemplo, o primeiro sinal de fala de usuário 130, o segundo sinal de fala de usuário 132) com base no recebimento de uma entrada de usuário. Por exemplo, o primeiro dispositivo 102 pode receber uma primeira entrada a partir do primeiro usuário 152 que indica que a substituição de sinal de fala deve ser ativada. Em resposta à primeira entrada, o primeiro dispositivo 102 pode emitir o primeiro sinal de fala processado 116 por meio dos alto-falantes 142. Como outro exemplo, o primeiro dispositivo 102 pode receber uma segunda entrada a partir do primeiro usuário 152 que indica que a substituição de sinal de fala deve ser desativada. Em resposta à segunda entrada, o primeiro dispositivo 102 pode emitir o primeiro sinal de fala de usuário 130 por meio dos alto-falantes 142. Em um aspecto particular, o módulo de processamento de sinal 122 pode incluir uma interface de usuário para habilitar um usuário (por exemplo, o primeiro usuário 152) para gerenciar os sinais de fala substitutos 112. Nesse aspecto, o primeiro dispositivo 102 pode receber a primeira entrada, a segunda entrada ou ambos, por meio da interface de usuário do módulo de processamento de sinal 122.
[0068] Em um aspecto particular, o módulo de processamento de sinal 122 pode receber o primeiro sinal de fala de usuário 130 durante uma chamada de voz, por exemplo, uma chamada entre o primeiro usuário 152 e o segundo usuário 154, e pode gerar o primeiro sinal de fala processado 116 durante a chamada de voz. Em outro aspecto particular, o módulo de processamento de sinal 122 pode receber o primeiro sinal de fala de usuário 130 (por exemplo, como uma mensagem a partir do segundo usuário 154) e pode, subsequentemente, gerar o primeiro sinal de fala processado 116 e pode armazenar o primeiro sinal de fala processado 116 para reprodução posterior para o primeiro usuário 152.
[0069] Em um aspecto particular, o módulo de processamento de sinal 122 pode usar os sinais de fala substitutos 112 para substituir uma porção de um sinal de fala de usuário (por exemplo, o primeiro sinal de fala de usuário 130, o segundo sinal de fala de usuário 132) correspondente a um usuário particular (por exemplo, o segundo usuário 154) independentemente de qual dispositivo (por exemplo, o computador desktop 106, o dispositivo móvel 104) envia o sinal de fala de usuário. Por exemplo, o módulo de processamento de sinal 122 pode receber o segundo sinal de fala de usuário 132 a partir do segundo usuário 154 por meio do microfone 144, do computador desktop 106 e da rede 120. O módulo de processamento de sinal 122 pode gerar um segundo sinal de fala processado 118 substituindo- se uma segunda porção 164 do segundo sinal de fala de usuário 132 por um segundo sinal de fala substituto 174 dos sinais de fala substitutos 112.
[0070] Em um aspecto particular, o módulo de processamento de sinal 122 pode gerar um sinal de fala substituto modificado (por exemplo, um sinal de fala substituto modificado 176) com base em um sinal de fala de usuário (por exemplo, o primeiro sinal de fala de usuário 130, o segundo sinal de fala de usuário 132). Por exemplo, a primeira porção 162 do primeiro sinal de fala de usuário 130 e o primeiro sinal de fala substituto 172 podem corresponder a um som comum e podem, cada um, corresponder a um tom diferente ou inflexão usada pelo segundo usuário 154. Por exemplo, o primeiro sinal de fala de usuário 130 pode corresponder a uma elocução surpreendida pelo segundo usuário 154, considerando que o primeiro sinal de fala substituto 172 pode corresponder a uma elocução calma. O módulo de processamento de sinal 122 pode gerar o sinal de fala substituto modificado 176 modificando-se o primeiro sinal de fala substituto 172 com base nos parâmetros de fala correspondentes ao primeiro sinal de fala de usuário 130. Por exemplo, o módulo de processamento de sinal 122 pode modificar pelo menos um dentre um parâmetro de pitch, um parâmetro de energia ou um parâmetro de codificação preditiva linear do primeiro sinal de fala substituto 172 para gerar o sinal de fala substituto modificado 176. O módulo de processamento de sinal 122 pode adicionar o sinal de fala substituto modificado 176 aos sinais de fala substitutos 112 no primeiro banco de dados 124. Em um aspecto particular, o primeiro dispositivo 102 pode enviar o sinal de fala substituto modificado 176 para um servidor que mantém uma cópia dos sinais de fala substitutos 112 associados ao segundo usuário 154.
[0071] Portanto, o sistema 100 pode habilitar a substituição dos sinais de fala. Uma porção de um sinal de fala de usuário associada a um usuário particular pode ser substituída por um sinal de fala substituto de qualidade de áudio superior associado ao mesmo usuário.
[0072] Referindo-se à Figura 2, um aspecto ilustrativo particular de um sistema operável para substituir sinais de fala é revelado e designado genericamente como 200. O sistema 200 pode incluir um servidor 206 acoplado, ou em comunicação com o primeiro dispositivo 102 e o dispositivo móvel 104 por meio da rede 120 da Figura 1. O dispositivo móvel 104 pode incluir o módulo de processamento de sinal 122 da Figura 1. O servidor 206 pode incluir um gerenciador de sinal de fala 262 e um segundo banco de dados 264.
[0073] A Figura 2 ilustra a aquisição dos sinais de fala substitutos 112 pelo primeiro dispositivo 102, pelo dispositivo móvel 104 ou ambos. Durante a operação, o segundo usuário 154 pode enviar um sinal de treinamento de fala (por exemplo, um sinal de treinamento de fala 272) para o servidor 206. Por exemplo, o segundo usuário 154 pode ser um novo funcionário e pode ser convidado a ler um roteiro de texto como parte de uma orientação de funcionário. O segundo usuário 154 pode enviar o sinal de treinamento de fala 272 lendo-se o roteiro de palavras em um microfone 244 do dispositivo móvel 104. Por exemplo, o segundo usuário 154 pode ler o roteiro em uma configuração de cabine de som para o propósito de ler o roteiro em um ambiente quieto. O módulo de processamento de sinal 122 do dispositivo móvel 104 pode enviar o sinal de treinamento de fala 272 para o servidor 206 por meio da rede 120.
[0074] O gerenciador de sinal de fala 262 pode gerar os sinais de fala substitutos 112 a partir do sinal de treinamento de fala 272. Por exemplo, o sinal de treinamento de fala 272 pode corresponder a uma palavra (por exemplo, "catatônico"). O gerenciador de sinal de fala 262 pode copiar uma porção particular do sinal de treinamento de fala 272 para gerar cada um dos sinais de fala substitutos 112. Para fins de ilustração, o gerenciador de sinal de fala 262 pode copiar o sinal de treinamento de fala 272 para gerar um terceiro sinal de fala substituto 220 (por exemplo, "catatônico"). O gerenciador de sinal de fala 262 pode copiar uma porção do sinal de treinamento de fala 272 para gerar um quarto sinal de fala substituto 224 (por exemplo, "ta"). O gerenciador de sinal de fala 262 pode copiar outra porção do sinal de treinamento de fala 272 para gerar um quinto sinal de fala substituto 222 (por exemplo, "t"). O quarto sinal de fala substituto 224 e o quinto sinal de fala substituto 222 podem corresponder a porções sobrepostas do sinal de treinamento de fala 272. Em um aspecto particular, uma porção particular do sinal de treinamento de fala 272 pode ser copiada para gerar um sinal de fala substituto com base na porção particular correspondente a um fonema, um dífono, um trífono, uma sílaba, uma palavra ou uma combinação dos mesmos. Em um aspecto particular, uma porção particular do sinal de treinamento de fala 272 pode ser copiada para gerar um sinal de fala substituto com base em um tamanho da porção particular. Por exemplo, o gerenciador de sinal de fala 262 pode gerar o sinal de fala substituto copiando-se uma porção do sinal de treinamento de fala 272 correspondente a um tamanho de amostra de sinal particular (por exemplo, 100 milissegundos).
[0075] Em um aspecto particular, o gerenciador de sinal de fala 262 pode determinar uma representação textual de um som correspondente a um sinal de fala substituto particular. Por exemplo, o quinto sinal de fala substituto 222 pode corresponder a um som particular (por exemplo, o som "t"). O gerenciador de sinal de fala 262 pode determinar a representação textual (por exemplo, a letra "t") do som particular com base em uma comparação do som particular a outro sinal de fala (por exemplo, um sinal de fala substituto gerado anteriormente do segundo usuário 154, outro sinal de fala substituto correspondente a outro usuário ou um sinal de fala sintético) correspondente à representação textual.
[0076] O gerenciador de sinal de fala 262 pode armazenar os sinais de fala substitutos 112 no segundo banco de dados 264. Por exemplo, o gerenciador de sinal de fala 262 pode armazenar os sinais de fala substitutos 112 no segundo banco de dados 264 como fala inalterada, em um formato compactado, ou em outro formato. O gerenciador de sinal de fala 262 pode armazenar recursos selecionados dos sinais de fala substitutos 112 no segundo banco de dados 264. O gerenciador de sinal de fala 262 pode armazenar a representação textual de cada um dos sinais de fala substitutos 112 no segundo banco de dados 264.
[0077] O servidor 206 pode enviar sinais de fala substitutos (por exemplo, os sinais de fala substitutos 112) a um dispositivo (por exemplo, o dispositivo móvel 104, o primeiro dispositivo 102, o computador desktop 106). O servidor 206 pode enviar periodicamente os sinais de fala substitutos 112 para o dispositivo (por exemplo, o dispositivo móvel 104, o primeiro dispositivo 102, o computador desktop 106). Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 a um dispositivo em resposta ao recebimento de uma solicitação a partir do dispositivo (por exemplo, o dispositivo móvel 104, o primeiro dispositivo 102, o computador desktop 106). Em um aspecto alternativo, os sinais de fala substitutos 112 podem ser enviados a partir de um dispositivo (por exemplo, o dispositivo móvel 104, o primeiro dispositivo 102 ou o computador desktop 106) para outro dispositivo (por exemplo, o dispositivo móvel 104, o primeiro dispositivo 102 ou o computador desktop 106) periodicamente ou em resposta ao recebimento de uma solicitação.
[0078] Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 associado ao segundo usuário 154 para um ou mais dispositivos (por exemplo, o dispositivo móvel 104, o computador desktop 106) associados ao segundo usuário 154. Por exemplo, o segundo usuário 154 pode enviar o sinal de treinamento de fala 272 para o servidor 206 falando-se no microfone 244 em um ambiente quieto (por exemplo, em casa) e pode receber os sinais de fala substitutos 112 a partir do servidor 206 no dispositivo móvel 104. Os sinais de fala substitutos 112 associados ao segundo usuário 154 podem ser usados por várias aplicações nos um ou mais dispositivos (por exemplo, o dispositivo móvel 104 ou o computador desktop 106) associados ao segundo usuário 154. Por exemplo, o segundo usuário 154 pode usar subsequentemente um aplicativo ativado por voz no dispositivo móvel 104 em um ambiente barulhento (por exemplo, em um show). O módulo de processamento de sinal 122 do dispositivo móvel 104 pode substituir uma porção de um sinal de fala de usuário recebido a partir do segundo usuário 154 por um dos sinais de fala substitutos 112 para gerar um sinal de fala processado, conforme descrito com referência à Figura 1. O sinal de fala processado pode ser usado pelo aplicativo ativado por voz no dispositivo móvel 104. Portanto, o aplicativo ativado por voz do dispositivo móvel 104 pode ser usado em um ambiente barulhento (por exemplo, em um show barulhento).
[0079] Como outro exemplo, um aplicativo de leitura eletrônica no dispositivo móvel 104 pode usar os sinais de fala substitutos 112 para emitir áudio. O aplicativo de leitura eletrônica pode emitir áudio correspondente a um correio eletrônico (e-mail), um livro eletrônico (e-book), um artigo, uma retroalimentação de voz, ou qualquer combinação dos mesmos. Por exemplo, o segundo usuário 154 pode ativar o aplicativo de leitura eletrônica para ler um e-mail. Uma porção do e-mail pode corresponder a "cat". Os sinais de fala substitutos 112 podem indicar as representações textuais correspondentes a cada um dos sinais de fala substitutos 112. Por exemplo, os sinais de fala substitutos 112 podem incluir os sons "catatônico", "ca" e "t" e podem indicar a representação textual de cada som. O aplicativo de leitura eletrônica pode determinar que um subconjunto dos sinais de fala substitutos 112 é correspondente à porção do e-mail com base em uma comparação da porção do e-mail (por exemplo, "cat") à representação textual (por exemplo, "ca" e "t") do subconjunto. O aplicativo de leitura eletrônica pode emitir o subconjunto dos sinais de fala substitutos 112. Portanto, o aplicativo de leitura eletrônica pode ler o e-mail em uma voz que soa como o segundo usuário 154.
[0080] Em um aspecto particular, o sistema 200 pode incluir um mecanismo de travamento para desabilitar acesso não autorizado aos sinais de fala substitutos 112. Um dispositivo (por exemplo, o primeiro dispositivo 102, o dispositivo móvel 104, ou o computador desktop 106) pode não ter a capacidade de gerar (ou usar) os sinais de fala substitutos 112 antes do recebimento de autorização (por exemplo, a partir de um servidor). A autorização pode ter por base se o primeiro usuário 152, o segundo usuário 154 ou ambos, pagaram por um serviço particular. A autorização pode ser válida por uso (por exemplo, por chamada de voz, por ativação de aplicativo), por período de tempo (por exemplo, um ciclo de cobrança, uma semana, um mês, etc.), ou uma combinação dos mesmos. Em um aspecto particular, a autorização pode ser válida por atualização dos sinais de fala substitutos 112. Em um aspecto particular, a autorização pode ser válida por aplicativo. Por exemplo, o dispositivo móvel 104 pode receber uma primeira autorização para usar os sinais de fala substitutos 112 durante chamadas de voz e receber outra autorização para usar os sinais de fala substitutos 112 com um aplicativo de leitura eletrônica. Em um aspecto particular, a autorização pode ter por base se o dispositivo é licenciado para gerar (ou usar) os sinais de fala substitutos 112. Por exemplo, o dispositivo móvel 104 pode receber autorização para usar os sinais de fala substitutos 112 em um aplicativo de leitura eletrônica em resposta à aquisição pelo segundo usuário 154 de uma licença para usar o aplicativo de leitura eletrônica no dispositivo móvel 104.
[0081] Em um aspecto particular, o gerenciador de sinal de fala 262 pode manter uma lista de dispositivos, usuários ou ambos, que têm autorização para acessar os sinais de fala substitutos 112. O gerenciador de sinal de fala 262 pode enviar uma solicitação de trava para um dispositivo (por exemplo, o primeiro dispositivo 102, o dispositivo móvel 104, o computador desktop 106, ou uma combinação dos mesmos) em resposta à determinação de que o dispositivo não tem autorização para acessar os sinais de fala substitutos 112. O dispositivo pode excluir (ou desabilitar o acesso a) os sinais de fala substitutos 112 armazenados localmente em resposta à solicitação de trava. Por exemplo, o gerenciador de sinal de fala 262 pode enviar a solicitação de trava para um dispositivo (por exemplo, o primeiro dispositivo 102, o dispositivo móvel 104 ou o computador desktop 106) que tinha, anteriormente, autorização para acessar os sinais de fala substitutos 112.
[0082] Em um aspecto particular, o módulo de processamento de sinal 122 pode determinar uma situação de autorização de um dispositivo correspondente (por exemplo, o primeiro dispositivo 102) antes de cada acesso do sinal de fala substituto 112. Por exemplo, o módulo de processamento de sinal 122 pode enviar uma solicitação de situação de autorização para o servidor 206 e pode receber a situação de autorização a partir do servidor 206. O módulo de processamento de sinal 122 pode se abster de acessar os sinais de fala substitutos 112 em resposta à determinação de que o primeiro dispositivo 102 não tem autorização. Em um aspecto particular, o módulo de processamento de sinal 122 pode excluir (ou desabilitar o acesso a) os sinais de fala substitutos 112. Por exemplo, o módulo de processamento de sinal 122 pode excluir os sinais de fala substitutos 112 ou desabilitar o acesso aos sinais de fala substitutos 112 por um aplicativo particular.
[0083] Em um aspecto particular, o módulo de processamento de sinal 122 pode excluir os sinais de fala substitutos 112 em resposta à primeira entrada de usuário recebida por meio da interface de usuário do módulo de processamento de sinal 122. Em um aspecto particular, o módulo de processamento de sinal 122 pode enviar uma solicitação de exclusão para o servidor 206 em resposta à segunda entrada de usuário recebida por meio da interface de usuário do módulo de processamento de sinal 122. Em resposta à solicitação de exclusão, o gerenciador de sinal de fala 262 pode excluir (ou desabilitar acesso a) os sinais de fala substitutos 112. Em um aspecto particular, o gerenciador de sinal de fala 262 pode excluir (ou desabilitar o acesso a) os sinais de fala substitutos 112 em resposta à determinação de que a solicitação de exclusão é recebida a partir de um dispositivo (por exemplo, o dispositivo móvel 104 ou o computador desktop 106) associado a um usuário (por exemplo, o segundo usuário 154) correspondente aos sinais de fala substitutos 112.
[0084] Em um aspecto particular, o dispositivo móvel 104 pode incluir um gerenciador de sinal de fala 262. O dispositivo móvel 104 pode receber o sinal de treinamento de fala 272 e o gerenciador de sinal de fala 262 no dispositivo móvel 104 pode gerar os sinais de fala substitutos 112. O gerenciador de sinal de fala 262 pode armazenar os sinais de fala substitutos 112 no dispositivo móvel 104. Nesse aspecto, o dispositivo móvel 104 pode enviar os sinais de fala substitutos 112 para o servidor 206.
[0085] Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 associados ao segundo usuário 154 para um ou mais dispositivos (por exemplo, o primeiro dispositivo 102) associados a um usuário (por exemplo, o primeiro usuário 152) distinto a partir do segundo usuário 154. Por exemplo, o servidor 206 pode enviar os sinais de fala substitutos 112 ao primeiro dispositivo 102 com base em um perfil de chamada (por exemplo, um primeiro perfil de chamada 270, um segundo perfil de chamada 274) que indica uma frequência de chamada ao longo de um período de tempo particular que satisfaz uma frequência de chamada limite. O primeiro perfil de chamada 270 pode estar associado ao primeiro usuário 152, ao primeiro dispositivo 102 ou ambos. O segundo perfil de chamada 274 pode estar associado ao segundo usuário 154, ao dispositivo móvel 104 ou ambos. A frequência de chamada pode indicar uma frequência de chamada entre o primeiro usuário 152, o primeiro dispositivo 102 ou ambos, e o segundo usuário 154, o dispositivo móvel 104 ou ambos. Para fins de ilustração, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 com base no primeiro perfil de chamada 270 que indica que a frequência de chamada entre o primeiro usuário 152 e o segundo usuário 154 satisfaz a frequência de chamada limite (por exemplo, 3 vezes em uma semana precedente). Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 antes de uma chamada de voz. Por exemplo, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 antes da chamada de voz com base no perfil de chamada (por exemplo, no primeiro perfil de chamada 270 ou no segundo perfil de chamada 274).
[0086] Como outro exemplo, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 com base em uma lista de contato (por exemplo, uma primeira lista de contato 276, uma segunda lista de contato 278) que indica um usuário particular (por exemplo, o primeiro usuário 152, o segundo usuário 154), um dispositivo particular (por exemplo, o primeiro dispositivo 102, o dispositivo móvel 104), ou uma combinação dos mesmos. Por exemplo, o servidor 206 pode enviar os sinais de fala substitutos 112 associados ao segundo usuário 154 para um ou mais dispositivos (por exemplo, o primeiro dispositivo 102) associado a um usuário particular (por exemplo, o primeiro usuário 152) com base na segunda lista de contato 278 que indica o usuário particular. Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 antes de uma chamada de voz. Por exemplo, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 antes da chamada de voz com base na lista de contato (por exemplo, uma primeira lista de contato 276, uma segunda lista de contato 278). O servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 em resposta ao recebimento do sinal de treinamento de fala 272.
[0087] Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 em resposta ao recebimento de uma solicitação pelos sinais de fala substitutos 112 a partir do primeiro dispositivo 102, em resposta ao recebimento de uma solicitação a partir do dispositivo móvel 104 para enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 ou ambos. Por exemplo, o primeiro dispositivo 102 pode enviar a solicitação pelos sinais de fala substitutos 112 em resposta a uma entrada de usuário recebida por meio de uma interface de usuário do módulo de processamento de sinal 122 do primeiro dispositivo 102. Como outro exemplo, o dispositivo móvel 104 pode enviar a solicitação para enviar os sinais de fala substitutos 112 em resposta a uma entrada de usuário recebida por meio de uma interface de usuário do módulo de processamento de sinal 122 do dispositivo móvel 104. Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 em resposta ao recebimento de uma notificação de atualização de lista de contato relacionada à primeira lista de contato 276, à segunda lista de contato 278 ou a ambas. O servidor 206 pode receber a notificação de atualização de lista de contato relacionada à primeira lista de contato 276 a partir do primeiro dispositivo 102, e o servidor 206 pode receber a notificação de atualização de lista de contato relacionada à segunda lista de contato 278 a partir do dispositivo móvel 104. Por exemplo, o servidor 206 pode receber a notificação de atualização de lista de contato a partir do módulo de processamento de sinal 122 do dispositivo correspondente.
[0088] Em um aspecto particular, o servidor 206 pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 em resposta ao recebimento de uma notificação de atualização de perfil de chamada relacionada ao primeiro perfil de chamada 270, ao segundo perfil de chamada 274 ou a ambos. O servidor 206 pode receber a notificação de atualização de perfil de chamada relacionada ao primeiro perfil de chamada 270 a partir do primeiro dispositivo 102, e o servidor 206 pode receber a notificação de atualização de perfil de chamada relacionada ao segundo perfil de chamada 274 a partir do dispositivo móvel 104. Por exemplo, o servidor 206 pode receber a notificação de atualização de perfil de chamada a partir do módulo de processamento de sinal 122 do dispositivo correspondente.
[0089] Como um exemplo adicional, o servidor 206 pode enviar os sinais de fala substitutos 112 associados ao segundo usuário 154 para o primeiro dispositivo 102 em resposta a uma notificação de inicialização de chamada referente a uma chamada de voz entre um dispositivo (por exemplo, o dispositivo móvel 104, o computador desktop 106) associada ao segundo usuário 154 e ao primeiro dispositivo 102. Por exemplo, o servidor 206 pode receber a notificação de inicialização de chamada a partir do dispositivo móvel 104 quando a chamada de voz for feita a partir do dispositivo móvel 104. Em um aspecto particular, o módulo de processamento de sinal 122 do dispositivo móvel 104 pode enviar a notificação de inicialização de chamada para o servidor 206. O servidor 206 pode enviar pelo menos um subconjunto dos sinais de fala substitutos 112 em um início da chamada de voz, durante a chamada de voz ou em ambos. Por exemplo, o servidor 206 pode começar a enviar os sinais de fala substitutos 112 em resposta ao recebimento da notificação de inicialização de chamada. Um primeiro subconjunto dos sinais de fala substitutos 112 pode ser enviado pelo servidor 206 no início da chamada de voz. Um segundo subconjunto dos sinais de fala substitutos 112 pode ser enviado pelo servidor 206 durante a chamada de voz.
[0090] Em um aspecto particular, o gerenciador de sinal de fala 262 pode incluir uma interface de usuário que habilita um administrador de sistema a realizar diagnósticos. Por exemplo, a interface de usuário pode exibir um perfil de uso que inclui frequência de transferência por upload e download associada aos sinais de fala substitutos 112. O perfil de uso também pode incluir a frequência de transferência por upload e download por dispositivo (por exemplo, o primeiro dispositivo 102, o dispositivo móvel 104 e/ou o computador desktop 106).
[0091] Portanto, o sistema 200 pode habilitar a aquisição dos sinais de fala substitutos que podem ser usados para substituir os sinais de fala pelo sistema 100 da Figura 1.
[0092] Referindo-se à Figura 3, um aspecto ilustrativo de uma interface de usuário é revelado e designado genericamente como 300. Em um aspecto particular, a interface de usuário 300 pode ser exibida pelo sistema 100 da Figura 1, pelo sistema 200 da Figura 2 ou por ambos.
[0093] Durante operação, o módulo de processamento de sinal 122 de um dispositivo (por exemplo, o primeiro dispositivo 102) pode ter acesso a uma lista de contato de um usuário (por exemplo, o primeiro usuário 152). O módulo de processamento de sinal 122 pode fornecer a interface de usuário 300 a um visor do primeiro dispositivo 102. Por exemplo, o módulo de processamento de sinal 122 pode fornecer a interface de usuário 300 a um visor do primeiro dispositivo 102 em resposta ao recebimento de uma solicitação a partir do primeiro usuário 152.
[0094] Um eixo geométrico horizontal (por exemplo, um eixo geométrico x) da interface de usuário 300 pode exibir identificadores (por exemplo, nomes) de um ou mais usuários da lista de contato (por exemplo, "Betsy Curtis", "Brett Dean", "Henry Lopez", "Sabrina Sanders" e "Randal Hughes"). Em um aspecto particular, o primeiro usuário 152 pode selecionar os um ou mais usuários a partir da lista de contato e a interface de usuário 300 pode incluir nomes dos usuários selecionados ao longo do eixo geométrico horizontal. Em outro aspecto, o módulo de processamento de sinal 122 pode selecionar automaticamente um subconjunto de usuários a partir da lista de contato. Por exemplo, o subconjunto de usuários pode ser um número particular (por exemplo, 5) de usuários com os quais o primeiro usuário 152 se comunicar com maior frequência, que o primeiro usuário 152 se comunicou mais recentemente, que o primeiro usuário 152 se comunicou por uma maior duração (por exemplo, soma das durações de chamada de telefone) ao longo de um intervalo de tempo particular, ou uma combinação dos mesmos.
[0095] A interface de usuário 300 pode indicar durações de tempo ao longo do eixo geométrico vertical (por exemplo, um eixo geométrico y). As durações de tempo podem estar associadas a sinais de fala correspondentes aos um ou mais usuários. Por exemplo, a interface de usuário 300 pode incluir uma primeira barra 302 correspondente ao segundo usuário 154 (por exemplo, "Randal Hughes"). A primeira barra 302 pode indicar a duração de reprodução de um ou mais sinais de fala associados ao segundo usuário 154. Por exemplo, a primeira barra 302 pode indicar a duração de reprodução do sinal de treinamento de fala 272. Em um aspecto particular, a primeira barra 302 pode indicar a duração de reprodução de sinais de fala associados ao segundo usuário 154 que são capturados ao longo de um intervalo de tempo particular (por exemplo, um dia particular, uma semana particular, ou um mês particular).
[0096] Em um aspecto particular, a interface de usuário 300 pode indicar durações de tempo de sinais de fala de usuários particulares capturados ao longo de intervalos de tempo distintos. Por exemplo, a primeira barra 302 pode indicar uma primeira duração de tempo dos sinais de fala do segundo usuário 154 capturados ao longo de um primeiro intervalo de tempo (por exemplo, uma semana precedente) e uma segunda barra 314 associada a outro usuário (por exemplo, "Sabrina Sanders") pode indicar uma segunda duração de tempo dos sinais de fala do outro usuário capturado ao longo de um segundo intervalo de tempo (por exemplo, um mês precedente). Por exemplo, o primeiro usuário 152 pode ter transferido por download sinais de fala substitutos associados ao segundo usuário 154 há uma semana e a primeira barra 302 pode indicar a primeira duração de tempo dos sinais de fala do segundo usuário 154 capturados subsequente à transferência por download. Como outro exemplo, o primeiro usuário 152 pode ter transferido por download sinais de fala substitutos associados ao outro usuário há um mês e a segunda barra 314 pode indicar a segunda duração de tempo associada aos sinais de fala do outro usuário (por exemplo, "Sabrina Sanders") capturados subsequente à transferência por download.
[0097] O primeiro usuário 152 pode selecionar o nome (por exemplo, "Randal Hughes") do segundo usuário 154 ou a primeira barra 302 com o uso de um cursor 306. A interface de usuário 300 pode exibir uma opção de adicionar 308, uma opção de excluir 310 ou ambas, em resposta ao recebimento da seleção. O primeiro usuário 152 pode selecionar a opção de excluir 310. Por exemplo, o primeiro usuário 152 pode determinar que os sinais de fala substitutos adicionais associados ao segundo usuário 154 não devem ser gerados. Para fins de ilustração, o primeiro usuário 152 pode determinar que existe uma coleção suficiente de sinais de fala substitutos associados ao segundo usuário 154, o primeiro usuário 152 pode não esperar se comunicar com o segundo usuário 154 no futuro próximo, o primeiro usuário 152 pode desejar conservar recursos (por exemplo, memória ou ciclos de processamento), ou uma combinação dos mesmos. Em resposta ao recebimento da seleção da opção de excluir 310, o módulo de processamento de sinal 122 pode remover os um ou mais sinais de fala associados ao segundo usuário 154, pode remover a indicação da primeira duração de tempo associada aos sinais de fala do segundo usuário 154 a partir da interface de usuário 300 ou ambos.
[0098] Em um aspecto particular, os sinais de fala associados ao segundo usuário 154 podem ser armazenados na memória acessível para o primeiro dispositivo 102 e o módulo de processamento de sinal 122 pode remover os um ou mais sinais de fala associados ao segundo usuário 154 em resposta ao recebimento da seleção da opção de excluir 310. Em um aspecto particular, os um ou mais sinais de fala associados ao segundo usuário 154 podem ser armazenados na memória acessível a um servidor (por exemplo, o servidor 206 da Figura 2). O módulo de processamento de sinal 122 pode enviar uma solicitação de exclusão para o servidor 206 em resposta ao recebimento da seleção da opção de excluir 310. Em resposta ao recebimento da solicitação de exclusão, o servidor 206 pode remover os sinais de fala associados ao segundo usuário 154, pode tornar os sinais de fala associados ao segundo usuário 154 inacessíveis para o primeiro dispositivo 102, pode tornar os sinais de fala associados ao segundo usuário 154 inacessíveis para o primeiro usuário 152, ou uma combinação dos mesmos. Por exemplo, o primeiro usuário 152 pode selecionar a opção de excluir 310 para tornar os sinais de fala associados ao segundo usuário 154 inacessível para o primeiro dispositivo 102. Nesse exemplo, o primeiro usuário 152 pode desejar que os um ou mais sinais de fala associados ao segundo usuário 154 permaneçam acessíveis a outros dispositivos.
[0099] Alternativamente, o primeiro usuário 152 pode selecionar a opção de adicionar 308. Em resposta ao recebimento da seleção da opção de adicionar 308, o módulo de processamento de sinal 122 pode solicitar que o gerenciador de sinal de fala 262 da Figura 2 forneça sinais de fala substitutos (por exemplo, os sinais de fala substitutos 112) gerados a partir dos sinais de fala associados ao segundo usuário 154. O gerenciador de sinal de fala 262 pode gerar os sinais de fala substitutos 112 com o uso dos sinais de fala associados ao segundo usuário 154, conforme descrito com referência à Figura 2. O gerenciador de sinal de fala 262 pode fornecer os sinais de fala substitutos 112 para o módulo de processamento de sinal 122 em resposta ao recebimento da solicitação a partir do módulo de processamento de sinal 122.
[0100] Em um aspecto particular, o módulo de processamento de sinal 122 pode redefinir a primeira barra 302 (por exemplo, para zero) subsequente ao recebimento da seleção da opção de excluir 310, subsequente ao recebimento da seleção da opção de adicionar 308, ou subsequente ao recebimento dos sinais de fala substitutos 112 a partir do gerenciador de sinal de fala 262. A primeira barra 302 pode indicar a primeira duração de tempo associada aos sinais de fala do segundo usuário 154 que são capturados subsequente a uma exclusão anterior dos sinais de fala associados ao segundo usuário 154 ou subsequente a uma transferência por download anterior (ou geração) de outros sinais de fala substitutos associados ao segundo usuário 154.
[0101] Em um aspecto particular, o módulo de processamento de sinal 122 pode enviar automaticamente a solicitação para o gerenciador de sinal de fala 262 por sinais de fala substitutos em resposta à determinação de que uma duração de tempo (por exemplo, indicada por uma terceira barra 316) correspondente aos sinais de fala de um usuário particular (por exemplo, "Brett Dean") satisfaz um limite de auto-atualização 312 (por exemplo, 1 hora).
[0102] Em um aspecto particular, o módulo de processamento de sinal 122 pode solicitar periodicamente (por exemplo, uma vez por semana) os sinais de fala substitutos 112 correspondentes aos sinais de fala associados ao segundo usuário 154. Em outro aspecto, o gerenciador de sinal de fala 262 pode enviar periodicamente os sinais de fala substitutos 112 para o primeiro dispositivo 102. Em um aspecto particular, a interface de usuário 300 pode habilitar o primeiro usuário 152 para transferir por download os sinais de fala substitutos 112 além das atualizações periódicas.
[0103] Em um aspecto particular, os sinais de fala associados ao segundo usuário 154 podem ser capturados pelo módulo de processamento de sinal 122 em um dispositivo (por exemplo, o dispositivo móvel 104) associado ao segundo usuário 154, por um dispositivo (por exemplo, o primeiro dispositivo 102) associado ao primeiro usuário 152, por um servidor (por exemplo, o servidor 206 da Figura 2) ou uma combinação dos mesmos. Por exemplo, o módulo de processamento de sinal 122 no primeiro dispositivo 102 (ou o dispositivo móvel 104) pode gravar os sinais de fala durante uma chamada de telefone entre o segundo usuário 154 e o primeiro usuário 152. Como outro exemplo, os sinais de fala podem corresponder a uma mensagem de áudio a partir do segundo usuário 154 armazenada no servidor 206. Em um aspecto particular, o dispositivo móvel 104, o primeiro dispositivo 102 ou ambos, pode fornecer os sinais de fala associados ao segundo usuário 154 para o servidor 206. Em um aspecto particular, a interface de usuário 300 pode indicar as durações de tempo com o uso de uma representação textual, uma representação gráfica (por exemplo, um gráfico de barras, um gráfico de torta ou ambos), ou ambas.
[0104] A interface de usuário 300 pode, portanto, habilitar o primeiro usuário 152 para monitorar a disponibilidade dos sinais de fala associados a usuários para a geração de sinal de fala substituto. A interface de usuário 300 pode habilitar o primeiro usuário 152 para escolher entre a geração de sinais de fala substitutos e conservar recursos (por exemplo, memória, ciclos de processamento ou ambos).
[0105] Referindo-se à Figura 4, um aspecto ilustrativo de um sistema que é operável para realizar a substituição "pré-criptação" dos sinais de fala é revelado e designado genericamente como 400. O sistema 400 pode incluir o dispositivo móvel 104 em comunicação com o primeiro dispositivo 102 por meio da rede 120. O dispositivo móvel 104 pode incluir um módulo de processamento de sinal 422 acoplado a, ou em comunicação com um criptador 426. O dispositivo móvel 104 pode incluir um analisador de banco de dados 410. O dispositivo móvel 104 pode incluir o primeiro banco de dados 124, um banco de dados parametrizados 424 ou ambos.
[0106] A Figura 4 ilustra a substituição de um sinal de fala antes de fornecer o sinal de fala substituído a um criptador (por exemplo, o criptador 426). Durante a operação, o dispositivo móvel 104 pode receber o primeiro sinal de fala de usuário 130, por meio do microfone 146, a partir do segundo usuário 154. O primeiro banco de dados 124 (por exemplo, um banco de dados "bruto") pode incluir os sinais de fala substitutos 112. Os sinais de fala substitutos 112 podem incluir o
[0107] primeiro sinal de fala substituto 172, o segundo sinal de fala substituto 174, e N sinais de fala substitutos 478. Cada um dos sinais de fala substitutos 112 podem ser gerados conforme descrito com referência à Figura 2.
[0108] O banco de dados parametrizado 424 pode incluir um conjunto de parâmetros de fala associado aos sinais de fala substitutos 112. Por exemplo, o banco de dados parametrizado 424 pode incluir primeiros parâmetros de fala 472 do primeiro sinal de fala substituto 172, segundos parâmetros de fala 474 do segundo sinal de fala substituto 174, e N parâmetros de fala 476 dos N sinais de fala substitutos 478. Os parâmetros de fala 472, 474, e 476 podem ocupar menos espaço de armazenamento do que os sinais de fala substitutos 112, então o banco de dados parametrizado 424 pode ser menor do que o primeiro banco de dados 124.
[0109] Em um aspecto particular, o banco de dados parametrizado 424 pode incluir uma referência particular (por exemplo, um índice, um endereço de banco de dados, um indicador de banco de dados, um endereço de memória, um localizador de recurso uniforme (URL), um identificador de recurso uniforme (URI), ou uma combinação dos mesmos) associados a cada um dos parâmetros de fala 472, 474 e 476 a uma localização de um sinal de fala substituto correspondente no primeiro banco de dados 124. Por exemplo, o banco de dados parametrizado 424 pode incluir uma primeira referência associada aos primeiros parâmetros de fala 472 a uma primeira localização do primeiro sinal de fala substituto 172 no primeiro banco de dados 124. O módulo de processamento de sinal 422 pode usar uma referência particular para acessar um sinal de fala substituto correspondente associado a parâmetros de fala particulares. Por exemplo, o módulo de processamento de sinal 422 pode usar a primeira referência para acessar o primeiro sinal de fala substituto 172 associado aos primeiros parâmetros de fala 472.
[0110] Em um aspecto particular, o primeiro banco de dados 124 pode incluir a referência particular (por exemplo, um índice, um endereço de banco de dados, um indicador de banco de dados, um endereço de memória, um localizador de recurso uniforme (URL), um identificador de recurso uniforme (URI), ou uma combinação dos mesmos) associada a cada um dos sinais de fala substitutos 112 a uma localização dos parâmetros de fala correspondentes no banco de dados parametrizado 424. Por exemplo, o primeiro banco de dados 124 pode incluir uma primeira referência associada ao primeiro sinal de fala substituto 172 a uma primeira localização dos primeiros parâmetros de fala 472 no banco de dados parametrizado 424. O módulo de processamento de sinal 422 pode usar uma referência particular para acessar os parâmetros de fala correspondentes associados a um sinal de fala substituto particular. Por exemplo, o módulo de processamento de sinal 422 pode usar a primeira referência para acessar os primeiros parâmetros de fala 472 do primeiro sinal de fala substituto 172.
[0111] Em um aspecto particular, o analisador de banco de dados 410 pode determinar se o banco de dados parametrizado 424 está atualizado em resposta ao recebimento pelo dispositivo móvel 104 do primeiro sinal de fala de usuário 130. Por exemplo, o analisador de banco de dados 410 pode determinar se o banco de dados parametrizado 424 inclui os parâmetros de fala (por exemplo, os parâmetros de fala 472, 474, e 476) associados aos sinais de fala substitutos 112. Para fins de ilustração, o analisador de banco de dados 410 pode determinar se o banco de dados parametrizado 424 inclui parâmetros de fala correspondentes a um ou mais sinais de fala substitutos dos sinais de fala substitutos 112. Em resposta à determinação de que o banco de dados parametrizado 424 inclui parâmetros de fala associados aos sinais de fala substitutos 112, o analisador de banco de dados 410 pode determinar se quaisquer modificações foram feitas ao primeiro banco de dados 124 subsequente a uma atualização anterior do banco de dados parametrizado 424. Para fins de ilustração, o analisador de banco de dados 410 pode determinar se um carimbo de data/hora de modificação do primeiro banco de dados 124 é subsequente a um carimbo de data/hora de atualização do banco de dados parametrizado 424. Em resposta à determinação de que as modificações não foram feitas ao primeiro banco de dados 124 subsequente à atualização anterior do banco de dados parametrizado 424, o analisador de banco de dados 410 pode determinar que o banco de dados parametrizado 424 está atualizado.
[0112] Em resposta à determinação de que o banco de dados parametrizado 424 não inclui parâmetros de fala associados aos sinais de fala substitutos 112, ou que modificações foram feitas ao primeiro banco de dados 124 subsequente à atualização anterior do banco de dados parametrizado 424, o analisador de banco de dados 410 pode gerar parâmetros de fala correspondentes aos sinais de fala substitutos 112. Por exemplo, o analisador de banco de dados 410 pode gerar os primeiros parâmetros de fala 472 a partir do primeiro sinal de fala substituto 172, os segundos parâmetros de fala 474 a partir do segundo sinal de fala substituto 174, e os N parâmetros de fala 476 a partir de N sinais de fala substitutos 478. Os primeiros parâmetros de fala 472, os segundos parâmetros de fala 474 e os N parâmetros de fala 476 podem incluir um parâmetro de pitch, um parâmetro de energia, um parâmetro de codificação preditiva linear (LPC), ou qualquer combinação dos mesmos, do primeiro sinal de fala substituto 172, do segundo sinal de fala substituto 174 e dos N sinais de fala substitutos 478, respectivamente.
[0113] O módulo de processamento de sinal 422 pode incluir um analisador 402, uma ferramenta de busca 404, um analisador de restrição 406 e um sintetizador 408. O analisador 402 pode gerar critérios de busca 418 com base no primeiro sinal de fala de usuário 130. Os critérios de busca 418 podem incluir uma pluralidade de parâmetros de fala associados ao primeiro sinal de fala de usuário 130. Por exemplo, a pluralidade de parâmetros de fala pode incluir um parâmetro de pitch, um parâmetro de energia, um parâmetro de codificação preditiva linear (LPC), ou qualquer combinação dos mesmos, do primeiro sinal de fala de usuário 130. O analisador 402 pode fornecer os critérios de busca 418 à ferramenta de busca 404.
[0114] A ferramenta de busca 404 pode gerar resultados de busca 414 buscando-se no banco de dados parametrizado 424 com base nos critérios de busca 418. Por exemplo, a ferramenta de busca 404 pode comparar a pluralidade de parâmetros de fala a cada um dos parâmetros de fala 472, 474, e 476. A ferramenta de busca 404 pode determinar que os primeiros parâmetros de fala 472 e os segundos parâmetros de fala 474 correspondem a pluralidade de parâmetros de fala. Por exemplo, a ferramenta de busca 404 pode selecionar (ou identificar) os primeiros parâmetros de fala 472 e os segundos parâmetros de fala 474 com base na comparação. Para fins de ilustração, o primeiro sinal de fala de usuário 130 pode corresponder a "bat". O primeiro sinal de fala substituto 172 pode corresponder a "a" gerado a partir de "cat", conforme descrito com referência à Figura 2. O segundo sinal de fala substituto 174 pode corresponder a "a" gerado a partir de "tag", conforme descrito com referência à Figura 2.
[0115] Em um aspecto particular, a ferramenta de busca 404 pode gerar os resultados de busca 414 com base nas medidas de semelhança associadas a cada um dos parâmetros de fala 472, 474 e 476. Uma medida de semelhança particular pode indicar quão intimamente relacionados os parâmetros de fala correspondentes são à pluralidade de parâmetros de fala associados ao primeiro sinal de fala de usuário 130. Por exemplo, a ferramenta de busca 404 pode determinar uma primeira medida de semelhança dos primeiros parâmetros de fala 472 calculando-se uma diferença entre a pluralidade de parâmetros de fala do primeiro sinal de fala de usuário 130 e os primeiros parâmetros de fala 472.
[0116] A ferramenta de busca 404 pode selecionar parâmetros de fala que têm uma medida de semelhança que satisfaz um limite de semelhança. Por exemplo, a ferramenta de busca 404 pode selecionar os primeiros parâmetros de fala 472 e os segundos parâmetros de fala 474 em resposta à determinação de que a primeira medida de semelhança e uma segunda medida de semelhança dos segundos parâmetros de fala 474 satisfazem (por exemplo, estão abaixo) o limite de semelhança.
[0117] Como outro exemplo, a ferramenta de busca 404 pode selecionar um número particular (por exemplo, 2) de parâmetros de fala que têm a maior semelhança à pluralidade de parâmetros de fala do primeiro sinal de fala de usuário 130 com base nas medidas de semelhança. A ferramenta de busca 404 pode incluir os parâmetros de fala selecionados (por exemplo, os primeiros parâmetros de fala 472 e os segundos parâmetros de fala 474) nos resultados de busca 414. Em um aspecto particular, a ferramenta de busca 404 pode incluir sinais de fala substitutos correspondentes às pluralidades selecionadas de parâmetros de fala nos resultados de busca 414. Por exemplo, a ferramenta de busca 404 pode incluir o primeiro sinal de fala substituto 172 e o segundo sinal de fala substituto 174 nos resultados de busca 414. A ferramenta de busca 404 pode fornecer os resultados de busca 414 ao analisador de restrição 406.
[0118] O analisador de restrição 406 pode selecionar um resultado de busca particular (por exemplo, um resultado selecionado 416) a partir dos resultados de busca 414 com base em uma restrição. A restrição pode incluir uma restrição de erro, uma restrição de custo ou ambos. Por exemplo, o analisador de restrição 406 pode selecionar os primeiros parâmetros de fala 472 (ou o primeiro sinal de fala substituto 172) a partir dos resultados de busca 414 com base em uma restrição de erro ou uma restrição de custo. Para fins de ilustração, o analisador de restrição 406 pode gerar um sinal de fala processado com base em cada um dos resultados de busca 414. Cada um dos sinais de fala processados pode representar o primeiro sinal de fala de usuário 130 que tem uma porção substituída pelo resultado de busca correspondente. O analisador de restrição 406 pode identificar um sinal de fala processado particular que tem o menor erro dentre os sinais de fala processados. Por exemplo, o analisador de restrição 406 pode determinar uma medida de erro associada a cada um dos sinais de fala processados com base em uma comparação do sinal de fala processado ao primeiro sinal de fala de usuário 130. Em um aspecto particular, o analisador de restrição 406 pode identificar o sinal de fala processado particular que tem o menor custo. Por exemplo, o analisador de restrição 406 pode determinar uma medida de custo associada a cada um dos sinais de fala processados com base em um custo da recuperação de um sinal de fala substituto associado ao resultado de busca correspondente, um ou mais sinais de fala substitutos anteriores, um ou mais sinais de fala substitutos subsequentes, ou uma combinação dos mesmos. Para fins de ilustração, o curso de recuperar uma pluralidade de sinais substitutos pode ser determinado com base em uma diferença dentre as localizações de memória correspondentes à pluralidade de sinais substitutos. Por exemplo, um custo inferior pode estar associado à recuperação de um sinal de fala substituto subsequente que está localizado mais próximo na memória a um sinal de fala substituto recuperado anteriormente. O analisador de restrição 406 pode selecionar o resultado de busca correspondente ao sinal de fala processado particular como o resultado selecionado 416.
[0119] O sintetizador 408 pode gerar o primeiro sinal de fala processado 116 com base no resultado selecionado 416. Por exemplo, se o resultado selecionado 416 estiver associado ao primeiro sinal de fala substituto 172, o sintetizador 408 pode gerar o primeiro sinal de fala processado 116 substituindo-se pelo menos uma porção do primeiro sinal de fala de usuário 130 pelo primeiro sinal de fala substituto 172. Em um aspecto particular, o sintetizador 408 pode gerar (por exemplo, sintetizar) um sinal de fala de substituição com base nos primeiros parâmetros de fala 472 e pode gerar o primeiro sinal de fala processado 116 substituindo-se pelo menos uma porção do primeiro sinal de fala de usuário 130 pelo sinal de fala de substituição.
[0120] O sintetizador 408 pode fornecer o primeiro sinal de fala processado 116 ao criptador 426. O criptador 426 pode gerar um sinal de saída 430 criptando-se o primeiro sinal de fala processado 116. Em um aspecto particular, o sinal de saída 430 pode indicar o primeiro sinal de fala substituto 172. Por exemplo, o sinal de saída 430 pode incluir uma referência para o primeiro sinal de fala substituto 172 no primeiro banco de dados 124, uma referência para os primeiros parâmetros de fala 472 no banco de dados parametrizado 424 ou ambos. O dispositivo móvel 104 pode enviar o sinal de saída 430, por meio da rede 120, para o primeiro dispositivo 102.
[0121] O sistema 400 pode, portanto, habilitar a substituição "pré-criptação" de uma porção de um sinal de fala de usuário por um sinal de fala substituto antes de criptar o sinal de fala de usuário. O sinal de fala substituto pode ter uma qualidade de áudio superior em relação à porção substituída do sinal de fala de usuário. Por exemplo, o segundo usuário 154 pode estar falando no dispositivo móvel 104 em um ambiente barulhento (por exemplo, em um show ou em uma rua movimentada). O sinal de fala substituto pode ser gerado a partir de um sinal de teste, conforme descrito com referência à Figura 2, que o segundo usuário 154 fornecido em um ambiente quieto. O módulo de processamento de sinal 422 pode fornecer um áudio de qualidade superior a um criptador em relação ao sinal de fala de usuário original. O criptador pode criptar o áudio de qualidade superior e pode transmitir o sinal criptado para outro dispositivo.
[0122] Referindo-se à Figura 5, um aspecto ilustrativo de um sistema que é operável para realizar a substituição "em-criptação" dos sinais de fala é revelado e designado genericamente como 500. O sistema 500 pode incluir um criptador 526, o analisador de banco de dados 410, o primeiro banco de dados 124, o banco de dados parametrizado 424 ou uma combinação dos mesmos.
[0123] A Figura 5 ilustra a substituição de um sinal de fala em um criptador (por exemplo, o criptador 526). Considerando que o aspecto da Figura 4 ilustra o módulo de processamento de sinal 422 acoplado ao criptador 426, sendo que o criptador 526 inclui um ou mais componentes do módulo de processamento de sinal 422. Durante a operação, o dispositivo móvel 104 pode receber o primeiro sinal de fala de usuário 130. Dentro do criptador 526, o analisador 402 pode gerar os critérios de busca 418, a ferramenta de busca 404 pode gerar os resultados de busca 414, o analisador de restrição 406 pode gerar o resultado selecionado 416, e o sintetizador 408 pode gerar o primeiro sinal de fala processado 116, conforme descrito com referência à Figura 4. O criptador 526 pode gerar o sinal de saída 430 criptando-se o primeiro sinal de fala processado 116. O dispositivo móvel 104 pode enviar o sinal de saída 430, por meio da rede 120, para o primeiro dispositivo 102.
[0124] Em um aspecto particular, o analisador de restrição 406 pode gerar o primeiro sinal processado correspondente ao resultado selecionado 416, conforme descrito com referência à Figura 4. O criptador 526 pode gerar o sinal de saída 430 criptando-se o primeiro sinal processado. Nesse aspecto, o módulo de processamento de sinal 422 pode abster-se de gerar o primeiro sinal de fala processado 116. Em um aspecto particular, o sinal de saída 430 pode indicar o primeiro sinal de fala substituto 172, conforme descrito com referência à Figura 4.
[0125] O sistema 500 pode, portanto, habilitar a geração de um sinal de fala processado em um criptador realizando-se substituição "em-criptação" de uma porção de um sinal de fala de usuário associado a um usuário por um sinal de fala substituto. O sinal de fala processado pode ter uma qualidade de áudio superior em relação ao sinal de fala de usuário. Por exemplo, o segundo usuário 154 pode estar falando no dispositivo móvel 104 em um ambiente barulhento (por exemplo, em um show ou em uma rua movimentada). O sinal de fala substituto pode ser gerado a partir de um sinal de teste, conforme descrito com referência à Figura 2, que o segundo usuário 154 forneceu em um ambiente quieto. O criptador pode criptar um áudio de qualidade superior em relação ao sinal de fala de usuário original e pode transmitir o sinal criptado para outro dispositivo. Em um aspecto particular, a substituição em- criptação da porção do sinal de fala de usuário pode reduzir as etapas associadas à geração do sinal de fala criptado a partir do sinal de fala de usuário, resultando no processamento de sinal mais rápido e eficaz do que a substituição pré-criptação da porção do sinal de fala de usuário.
[0126] À medida que os aspectos das Figuras 4 a 5 ilustram a substituição de um sinal de fala em um sistema de criptador, os aspectos das Figuras 6 e 7 ilustram a substituição de um sinal de fala em um sistema de decodificador. Em um aspecto particular, a substituição de sinal de fala pode ocorrer em um decodificador local de um sistema de criptador. Por exemplo, um primeiro sinal de fala processado pode ser gerado pelo decodificador local para determinar parâmetros de sinal com base em uma comparação do primeiro sinal de fala processado e um sinal de fala de usuário (por exemplo, o primeiro sinal de fala de usuário 130). Para fins de ilustração, o decodificador local pode emular o comportamento de um decodificador em outro dispositivo. O sistema de criptador pode criptar os parâmetros de sinal para transmissão para outro dispositivo.
[0127] Referindo-se à Figura 6, um aspecto ilustrativo de um sistema que é operável para realizar a substituição paramétrica dos sinais de fala em um decodificador é revelado e designado genericamente como 600. O sistema 600 inclui o primeiro dispositivo 102. O primeiro dispositivo 102 pode incluir o primeiro banco de dados 124, o banco de dados parametrizado 424, o analisador de banco de dados 410, um decodificador 626, ou uma combinação dos mesmos. O decodificador 626 pode incluir, ser acoplado a, ou estar em comunicação com um módulo de processamento de sinal 622.
[0128] A Figura 6 ilustra a substituição de um sinal de fala em um dispositivo receptor. Durante operação, o primeiro dispositivo 102 pode receber os primeiros dados 630 por meio da rede 120 a partir do dispositivo móvel 104. Os primeiros dados 630 podem incluir dados de pacote correspondentes a um ou mais quadros de um sinal de áudio. O sinal de áudio pode ser um sinal de fala de usuário correspondente a um usuário (por exemplo, o segundo usuário 154 da Figura 1). Os primeiros dados 630 pode incluir uma pluralidade de parâmetros associados ao sinal de áudio. A pluralidade de parâmetros pode incluir um parâmetro de pitch, um parâmetro de energia, um parâmetro de codificação preditiva linear (LPC), ou qualquer combinação dos mesmos.
[0129] O analisador 602 pode gerar critérios de busca 612 com base nos primeiros dados 630. Por exemplo, o analisador 602 pode extrair a pluralidade de parâmetros de fala associados ao sinal de áudio a partir dos primeiros dados 630. Os critérios de busca 612 podem incluir a pluralidade de parâmetros de fala extraídos. O analisador 602 pode fornecer os critérios de busca 612 à ferramenta de busca 604.
[0130] A ferramenta de busca 604 pode identificar um ou mais parâmetros de fala dentre os parâmetros de fala 472, 474 e 476 da Figura 4. Em um aspecto particular, a ferramenta de busca 604 pode identificar os primeiros parâmetros de fala 472 e os segundos parâmetros de fala 474 comparando-se a pluralidade de parâmetros de fala a cada um dos parâmetros de fala 472, 474 e 476, conforme descrito com referência à ferramenta de busca 404 da Figura 4. A ferramenta de busca 604 pode incluir os parâmetros de fala identificados (por exemplo, os primeiros parâmetros de fala 472 e os segundos parâmetros de fala 474) em um conjunto de parâmetros de fala 614. A ferramenta de busca 604 pode fornecer o conjunto de parâmetros de fala 614 ao analisador de restrição 606. O analisador de restrição 606 pode selecionar os primeiros parâmetros de fala 472 do conjunto de parâmetros de fala 614 com base em uma restrição, conforme descrito com referência ao analisador de restrição 406 da Figura 4. O analisador de restrição 606 pode fornecer os primeiros parâmetros de fala 472 ao sintetizador 608.
[0131] O sintetizador 608 pode gerar segundos dados 618 substituindo-se a pluralidade de parâmetros de fala nos primeiros dados 630 pelos primeiros parâmetros de fala 472. O decodificador 626 pode gerar o primeiro sinal de fala processado 116 decodificando-se os segundos dados 618. Por exemplo, o primeiro sinal de fala processado 116 pode ser um sinal processado gerado com base nos primeiros parâmetros de fala 472. O primeiro dispositivo 102 pode fornecer o primeiro sinal de fala processado 116 aos alto- falantes 142.
[0132] Em um aspecto particular, o analisador 602 pode determinar que os primeiros dados 630 indicam o primeiro sinal de fala substituto 172. Por exemplo, o analisador 602 pode determinar que os primeiros dados 630 incluem uma referência para o primeiro sinal de fala substituto 172 no primeiro banco de dados 124, uma referência para os primeiros parâmetros de fala 472 no banco de dados parametrizado 424 ou ambas. O analisador 602 pode fornecer os primeiros parâmetros de fala 472 ao sintetizador 608 em resposta à determinação de que os primeiros dados 630 indicam o primeiro sinal de fala substituto 172. Nesse aspecto, o analisador 602 pode abster-se de gerar os critérios de busca 612.
[0133] O sistema 600 pode, portanto, habilitar a geração de um sinal de fala processado por substituição "paramétrica" de uma primeira pluralidade de parâmetros de fala de dados recebidos por parâmetros de fala correspondentes a um sinal de fala substituto. A geração de um sinal processado com o uso dos parâmetros de fala correspondentes ao sinal de fala substituto pode resultar na qualidade de áudio superior em relação à geração do sinal processado com o uso da primeira pluralidade de parâmetros de fala. Por exemplo, os dados recebidos podem não representar um sinal de áudio de alta qualidade. Para fins de ilustração, os dados recebidos podem corresponder a um sinal de fala de usuário recebido a partir de um usuário em um ambiente barulhento (por exemplo, em um show) e podem ser gerados por outro dispositivo sem realizar a substituição de fala. Até mesmo se o outro dispositivo realizasse a substituição de fala, alguns dos dados enviados pelo outro dispositivo podem não ser recebidos, por exemplo, devido à perda de pacote, limitações de largura de banda e/ou limitações de taxa de bits. Os parâmetros de fala podem corresponder a um sinal de fala substituto gerado a partir de um sinal de teste, conforme descrito com referência à Figura 2, que o segundo usuário 154 forneceu em um ambiente quieto. O decodificador pode usar os parâmetros de fala para gerar um sinal processado de qualidade superior em relação ao que pode ser gerado com o uso da primeira pluralidade de parâmetros de fala.
[0134] Referindo-se à Figura 7, um aspecto ilustrativo de um sistema que é operável para realizar a substituição de forma de onda dos sinais de fala em um decodificador é revelado e designado genericamente como 700. O sistema 700 pode incluir o primeiro banco de dados 124, o banco de dados parametrizado 424, o analisador de banco de dados 410, um decodificador 726, ou uma combinação dos mesmos. O decodificador 726 pode incluir, ser acoplado a, ou estar em comunicação com um módulo de processamento de sinal 722.
[0135] A Figura 7 ilustra a substituição de um sinal de fala em um dispositivo receptor. Considerando que o aspecto da Figura 6 ilustra gerar um sinal de fala processado substituindo-se os parâmetros de fala recebidos por parâmetros de fala correspondentes a um sinal de fala substituto, o aspecto da Figura 7 ilustra identificar o sinal de fala substituto com base nos parâmetros de fala recebidos e gerar o sinal de fala processado com o uso do sinal de fala substituto.
[0136] Durante a operação, o primeiro dispositivo 102 pode receber os primeiros dados 630. O analisador 602 pode gerar os critérios de busca 612 com base nos primeiros dados 630, conforme descrito com referência à Figura 6. A ferramenta de busca 604 pode identificar um subconjunto (por exemplo, uma pluralidade de sinais de fala substitutos 714) do sinal de fala substituto 112 com base nos critérios de busca 612, conforme descrito com referência à ferramenta de busca 404 da Figura 4. Por exemplo, a pluralidade de sinais de fala substitutos 714 podem incluir o primeiro sinal de fala substituto 172 e o segundo sinal de fala substituto 174. O analisador de restrição 706 pode selecionar um primeiro sinal de fala substituto (por exemplo, o primeiro sinal de fala substituto 172) dentre a pluralidade de sinais de fala substitutos 714 com base em uma restrição, conforme descrito com referência ao analisador de restrição 406 da Figura 4. Em um aspecto particular, o analisador de restrição 706 pode selecionar os primeiros parâmetros de fala 472 com base na restrição, conforme descrito com referência ao analisador de restrição 406 da Figura 4, e pode selecionar o primeiro sinal de fala substituto 172 correspondente aos primeiros parâmetros de fala selecionados 472.
[0137] O analisador de restrição 706 pode fornecer o primeiro sinal de fala substituto 172 ao sintetizador 708. O sintetizador 708 pode gerar o primeiro sinal de fala processado 116 com base no primeiro sinal de fala substituto 172. Por exemplo, o sintetizador 708 pode gerar o primeiro sinal de fala processado 116 substituindo- se uma porção do sinal de entrada pelo primeiro sinal de fala substituto 172. O primeiro dispositivo 102 pode emitir o primeiro sinal de fala processado 116 por meio dos alto- falantes 142.
[0138] O sistema 700 pode, portanto, habilitar a substituição de "forma de onda" recebendo-se correspondentes a um sinal de fala de usuário e gerando-se um sinal processado substituindo-se uma porção do sinal de fala de usuário com um sinal de fala substituto. O sinal processado pode ter a qualidade de áudio superior em relação ao sinal de fala de usuário. Por exemplo, os dados recebidos podem não representar um sinal de áudio de alta qualidade. Para fins de ilustração, os dados recebidos podem corresponder a um sinal de fala de usuário recebido a partir de um usuário em um ambiente barulhento (por exemplo, em um show) e podem ser gerados por outro dispositivo sem realizar a substituição de fala. Até mesmo se o outro dispositivo realizasse a substituição de fala, alguns dos dados enviados pelo outro dispositivo podem não ser recebidos, por exemplo, devido à perda de pacote, limitações de largura de banda e/ou limitações de taxa de bits. O sinal de fala substituto pode ser gerado a partir de um sinal de teste, conforme descrito com referência à Figura 2, que o segundo usuário 154 forneceu em um ambiente quieto. O decodificador pode usar o sinal de fala substituto para gerar um sinal processado de qualidade superior em relação ao que pode ser gerado com o uso dos dados recebidos.
[0139] Referindo-se à Figura 8, um aspecto ilustrativo de um sistema que é operável para realizar a substituição "em-dispositivo" dos sinais de fala é revelado e designado genericamente como 800. O sistema 800 pode incluir o primeiro banco de dados 124, o analisador de banco de dados 410, o módulo de processamento de sinal 422, o banco de dados parametrizado 424, um aplicativo 822 ou uma combinação dos mesmos.
[0140] Durante operação, o módulo de processamento de sinal 422 pode receber um sinal de entrada 830 a partir do aplicativo 822. O sinal de entrada 830 pode corresponder a um sinal de fala. O aplicativo 822 pode incluir um aplicativo visualizador de documento, um aplicativo visualizador de livro eletrônico, um aplicativo de texto para fala, um aplicativo de correio eletrônico, um aplicativo de comunicação, um aplicativo de internet, um aplicativo de gravação de som ou uma combinação dos mesmos. O analisador 402 pode gerar os critérios de busca 418 com base no sinal de entrada 830, a ferramenta de busca 404 pode gerar os resultados de busca 414 com base nos critérios de busca 418, o analisador de restrição 406 pode identificar o resultado selecionado 416 e o sintetizador 408 pode gerar o primeiro sinal de fala processado 116 substituindo-se uma porção do sinal de entrada 830 por um sinal de fala de substituição com base no resultado selecionado 416, conforme descrito com referência à Figura 4. O primeiro dispositivo 102 pode emitir o primeiro sinal de fala processado 116 por meio dos alto-falantes 142. Em um aspecto particular, o módulo de processamento de sinal 422 pode gerar os critérios de busca 418 em resposta ao recebimento de uma solicitação de usuário a partir do primeiro usuário 152 para gerar o primeiro sinal de fala processado 116.
[0141] Em um aspecto particular, o primeiro banco de dados 124 pode incluir múltiplos conjuntos de sinais de fala substitutos. Cada conjunto de sinais de fala substitutos pode corresponder a uma celebridade particular, um personagem particular (por exemplo, um personagem de desenho animado, um personagem de televisão ou um personagem de filme), um usuário particular (por exemplo, o primeiro usuário 152 ou o segundo usuário 154), ou uma combinação dos mesmos. O primeiro usuário 152 pode selecionar um conjunto particular de sinais de fala substitutos (por exemplo, os sinais de fala substitutos 112). Por exemplo, o primeiro usuário 152 pode selecionar uma celebridade correspondente, um personagem correspondente, um usuário correspondente ou uma combinação dos mesmos. O módulo de processamento de sinal 422 pode usar o conjunto selecionado de sinais de fala substitutos (por exemplo, os sinais de fala substitutos 112) para gerar o primeiro sinal de fala processado 116, conforme descrito no presente documento.
[0142] Em um aspecto particular, o primeiro dispositivo 102 pode enviar uma solicitação para outro dispositivo (por exemplo, o servidor 206 da Figura 2 ou o dispositivo móvel 104). A solicitação pode identificar a celebridade particular, o personagem particular, o usuário particular ou uma combinação dos mesmos. O outro dispositivo pode enviar os sinais de fala substitutos 112 para o primeiro dispositivo 102 em resposta ao recebimento da solicitação.
[0143] O sistema 800 pode, portanto, habilitar a substituição "em-dispositivo" substituindo-se uma porção de um sinal de entrada de fala gerado por um aplicativo por um sinal de fala substituto. O sinal de fala substituto pode ter qualidade de áudio superior em relação ao sinal de entrada de fala. Em um aspecto particular, o sinal de fala substituto pode ser gerado a partir da fala de teste do primeiro usuário 152. Por exemplo, o sinal de entrada de fala gerado pelo aplicativo pode soar robótico ou pode corresponder à voz padrão. O primeiro usuário 152 pode preferir outra voz (por exemplo, a voz do primeiro usuário 152, do segundo usuário 154 da Figura 1, de uma celebridade particular, de um personagem particular, etc.). O sinal de fala substituto pode corresponder à voz preferida.
[0144] Embora os aspectos das Figuras 4 a 8 ilustrem um analisador de banco de dados local 410, em um aspecto particular o analisador de banco de dados 410, ou componentes dos mesmos, pode ser incluído em um servidor (por exemplo, o servidor 206 da Figura 2). Nesse aspecto, o dispositivo móvel 104, o primeiro dispositivo 102 ou ambos, podem receber pelo menos uma porção do banco de dados parametrizado 424 a partir do servidor 206. Por exemplo, o servidor 206 pode analisar o sinal de fala substituto 112 para gerar os primeiros parâmetros de fala 472, os segundos parâmetros de fala 474, os N parâmetros de fala 476, ou uma combinação dos mesmos.
[0145] O servidor 206 pode fornecer pelo menos a porção do banco de dados parametrizado 424 para o dispositivo móvel 104, o primeiro dispositivo 102 ou ambos. Por exemplo, o dispositivo móvel 104, o primeiro dispositivo 102 ou ambos, pode solicitar pelo menos a porção do banco de dados parametrizado 424 a partir do servidor 206, periodicamente ou em resposta ao recebimento do primeiro sinal de fala de usuário 130 da Figura 1, os primeiros dados 630 da Figura 6, o sinal de entrada 830, a solicitação de usuário, ou uma combinação dos mesmos. Em um aspecto alternativo, o servidor 206 pode enviar periodicamente pelo menos a porção do banco de dados parametrizado 424 para o dispositivo móvel 104, o primeiro dispositivo 102 ou ambos.
[0146] Em um aspecto particular, um servidor (por exemplo, o servidor 206 da Figura 2) pode incluir o módulo de processamento de sinal 422. O servidor 206 pode receber o primeiro sinal de fala de usuário 130 a partir do dispositivo móvel 104. O servidor 206 pode gerar o sinal de saída 430, conforme descrito com referência às Figuras 3 e 4. O servidor 206 pode enviar o sinal de saída 430 para o primeiro dispositivo 102. Em um aspecto particular, o sinal de saída 430 pode corresponder aos primeiros dados 630 da Figura 6.
[0147] Referindo-se à Figura 9, um diagrama de um aspecto particular de um sistema que é operável para substituir sinais de fala é mostrado e designado genericamente como 900. Em um aspecto particular, o sistema 900 pode corresponder ou pode ser incluído no primeiro dispositivo 102.
[0148] O sistema 900 inclui um módulo de busca 922 acoplado ao sintetizador 408. O módulo de busca 922 pode incluir ou ter acesso a um banco de dados 924 acoplado a uma ferramenta de busca 904. Em um aspecto particular, o banco de dados 924 pode incluir o primeiro banco de dados 124 da Figura 1, o banco de dados parametrizado 424 da Figura 4 ou por ambos. Por exemplo, o banco de dados 924 pode armazenar os sinais de fala substitutos 112 e/ou um conjunto de parâmetros de fala (por exemplo, os parâmetros de fala 472, 474, e/ou 476) correspondentes aos sinais de fala substitutos 112. Em um aspecto particular, o banco de dados 924 pode receber e armazenar os sinais de fala substitutos 112 e o conjunto de parâmetros de fala. Por exemplo, o banco de dados 924 pode receber os sinais de fala substitutos 112 e o conjunto de parâmetros de fala de outro dispositivo (por exemplo, o servidor 206 da Figura 2). Como outro exemplo, o banco de dados 924 pode receber os sinais de fala substitutos 112 a partir do servidor 206 e a ferramenta de busca 904 pode gerar o conjunto de parâmetros de fala com o uso de pelo menos um dentre um quantizador de vetor, um modelo oculto de markov (HMM), ou um modelo de mistura gaussiano (GMM). A ferramenta de busca 904 pode armazenar o conjunto gerado de parâmetros de fala no banco de dados 924.
[0149] Em um aspecto particular, a ferramenta de busca 904 pode incluir o analisador 402 e a ferramenta de busca 404 da Figura 4. O sintetizador 408 pode incluir um substituidor 902. O substituidor 902 pode estar acoplado à ferramenta de busca 904 e ao banco de dados 924.
[0150] Durante a operação, a ferramenta de busca 904 pode receber um sinal de entrada 930. O sinal de entrada 930 pode corresponder à fala. Em um aspecto particular, o sinal de entrada 930 pode incluir o primeiro sinal de fala de usuário 130 das Figuras 1 e 4 a 5, os primeiros dados 630 das Figuras 6 a 7, ou o sinal de entrada 830 da Figura 8. Por exemplo, a ferramenta de busca 904 pode receber o sinal de entrada 930 a partir de um usuário (por exemplo, o primeiro usuário 152 da Figura 1), outro dispositivo, um aplicativo, ou uma combinação dos mesmos. O aplicativo pode incluir um aplicativo visualizador de documento, um aplicativo visualizador de livro eletrônico, um aplicativo de texto para fala, um aplicativo de correio eletrônico, um aplicativo de comunicação, um aplicativo de internet, um aplicativo de gravação de som, ou uma combinação dos mesmos.
[0151] A ferramenta de busca 904 pode comparar o sinal de entrada 930 aos sinais de fala substitutos 112. Em um aspecto particular, a ferramenta de busca 904 pode comparar a primeira pluralidade de parâmetros de fala do sinal de entrada 930 ao conjunto de parâmetros de fala. A ferramenta de busca 904 pode determinar a primeira pluralidade de parâmetros de fala com o uso de pelo menos um dentre quantizador de vetor, um modelo oculto de markov (HMM) ou um modelo de mistura gaussiano (GMM).
[0152] A ferramenta de busca 904 pode determinar que um sinal de fala substituto particular (por exemplo, o primeiro sinal de fala substituto 172) é correspondente ao sinal de entrada 930 com base na comparação. Por exemplo, a ferramenta de busca 904 pode selecionar o primeiro sinal de fala substituto 172, os primeiros parâmetros de fala 472 ou ambos, com base em uma comparação da primeira pluralidade de parâmetros de fala e no conjunto de parâmetros de fala correspondente aos sinais de fala substitutos 112, uma restrição ou ambos, conforme descrito com referência à Figura 4.
[0153] A ferramenta de busca 904 pode fornecer um resultado selecionado 416 para o substituidor 902. O resultado selecionado 416 pode indicar o primeiro sinal de fala substituto 172, os primeiros parâmetros de fala 472 ou ambos. O substituidor 902 pode recuperar o primeiro sinal de fala substituto 172 a partir do banco de dados 924 com base no resultado selecionado 416. O substituidor 902 pode gerar o primeiro sinal de fala processado 116 substituindo- se uma porção do sinal de entrada 930 pelo primeiro sinal de fala substituto 172, conforme descrito com referência à Figura 4.
[0154] Em um aspecto particular, o banco de dados 924 pode incluir rótulos associados aos sinais de fala substitutos 112. Por exemplo, um primeiro rótulo pode indicar um som (por exemplo, um fonema, um dífono, um trífono, uma sílaba, uma palavra ou uma combinação dos mesmos) correspondente ao primeiro sinal de fala substituto 172. O primeiro rótulo pode incluir um identificador de texto associado ao som. Em um aspecto particular, o substituidor 902 pode recuperar o primeiro rótulo a partir do banco de dados 924 com base no resultado selecionado 416. Por exemplo, o resultado selecionado 416 pode indicar o primeiro sinal de fala substituto 172 e o substituidor 902 pode recuperar o primeiro rótulo correspondente a partir do banco de dados 924. O sintetizador 408 pode gerar uma saída de texto que inclui o primeiro rótulo.
[0155] Os sistemas de reconhecimento de fala existentes usam um modelo de linguagem e funcionam em construtos de ordem superior, como palavras ou sons. Em contrapartida, o módulo de busca 922 não usa um modelo de linguagem e pode operar em um nível de parâmetro ou em um nível de sinal para realizar a comparação do sinal de entrada 930 e dos sinais de fala substitutos 112 para determinar o resultado selecionado 416.
[0156] O sistema 900 pode habilitar a substituição da porção do sinal de entrada 930 pelo primeiro sinal de fala substituto 172 para gerar o primeiro sinal de fala processado 116. O primeiro sinal de fala processado 116 pode ter uma qualidade de áudio superior em relação ao sinal de entrada 930.
[0157] Referindo-se à Figura 10, um diagrama de um aspecto particular de um banco de dados é mostrado e designado genericamente como 1024. Em um aspecto particular, o banco de dados 1024 pode corresponder ao primeiro banco de dados 124 da Figura 1, ao banco de dados parametrizado 424 da Figura 4, ao banco de dados 924 da Figura 9, ou uma combinação dos mesmos.
[0158] O banco de dados 1024 pode incluir coeficientes cepstrais de frequência mel (MFCC) 1002, pares de linhas espectrais (LSP) 1004, frequências de linhas espectrais (LSF) 1006, um cepstral 1010, informações de linhas espectrais (LSI) 1012, transformada discreta de cosseno (DCT) parâmetros 1014, transformada de fourier discreta (DFT) parâmetros 1016, transformada rápida de fourier (FFT) parâmetros 1018, frequências formantes 1020, amostras de modulação por código de pulsos (PCM) 1022, ou uma combinação dos mesmos.
[0159] Em um aspecto particular, um conversor de analógico em digital (ADC) de um dispositivo (por exemplo, o servidor 206 da Figura 2) pode gerar as amostras de PCM 1022 com base em um sinal de treinamento de fala (por exemplo, o sinal de treinamento de fala 272). O gerenciador de sinal de fala 262 pode receber as amostras de PCM 1022 a partir do ADC e pode armazenar as amostras de PCM 1022 no banco de dados 1024. O gerenciador de sinal de fala 262 pode gerar os sinais de fala substitutos 112, conforme descrito com referência à Figura 2, com base nas amostras de PCM 1022.
[0160] O gerenciador de sinal de fala 262 pode calcular uma representação de um espectro de cada uma das amostras de PCM 1022. Por exemplo, o gerenciador de sinal de fala 262 pode gerar os MFCC 1002, os LSP 1004, as LSF 1006, os cepstrais 1010, as LSI 1012, os parâmetros de DCT 1014, os parâmetros de DFT 1016, os parâmetros de FFT 1018, as frequências formantes 1020, ou uma combinação dos mesmos, correspondente a cada uma das amostras de PCM 1022 (ou cada um dos sinais de fala substitutos 112).
[0161] Por exemplo, os MFCC 1002 pode ser uma representação de um espectro de potência de curto prazo de um som correspondente a uma amostra de PCM particular. O gerenciador de sinal de fala 262 pode determinar os MFCC 1002 com base em uma transformada linear de cosseno de um espectro de potência de log em uma escala mel não linear de frequência. O espectro de potência de log pode corresponder à amostra de PCM particular.
[0162] Como outro exemplo, os LSP 1004 ou as LSF 1006 podem consistir em uma representação de coeficientes de previsão linear (LPC) correspondentes à amostra de PCM particular. O LPC pode representar um envelope espectral da amostra de PCM particular. O gerenciador de sinal de fala 262 pode determinar os LPC da amostra de PCM particular com base em um modelo preditivo linear. O gerenciador de sinal de fala 262 pode determinar os LSP 1004, as LSF 1006 ou ambos, com base nos LPC.
[0163] Como um exemplo adicional, os cepstrais 1010 podem representar um espectro de potência da amostra de PCM particular. O gerenciador de sinal de fala 262 pode determinar os cepstrais 1010 aplicando-se uma transformada de fourier inversa (IFT) a um logaritmo de um espectro estimado da amostra de PCM particular.
[0164] Como um exemplo adicional, as LSI 1012 podem representar um espectro da amostra de PCM particular. O gerenciador de sinal de fala 262 pode aplicar um filtro à amostra de PCM particular para gerar as LSI 1012.
[0165] O gerenciador de sinal de fala 262 pode aplicar uma transformada discreta de cosseno particular (DCT) à amostra de PCM particular para gerar os parâmetros de DCT 1014, pode aplicar uma transformada de fourier discreta particular (DFT) à amostra de PCM particular para gerar os parâmetros de DFT 1016, pode aplicar uma transformada rápida de fourier particular (FFT) à amostra de PCM particular para gerar os parâmetros de FFT 1018 ou uma combinação dos mesmos.
[0166] As frequências formantes 1020 podem representar picos espectrais de um espectro da amostra de PCM particular. O gerenciador de sinal de fala 262 pode determinar as frequências formantes 1020 com base nas informações de fase da amostra de PCM particular, aplicando-se um filtro passa faixa à amostra de PCM particular, realizando-se uma análise de LPC da amostra de PCM particular ou uma combinação dos mesmos.
[0167] Em um aspecto particular, os MFCC 1002, os LSP 1004, as LSF 1006, os cepstrais 1010, as LSI 1012, os parâmetros de DCT 1014, os parâmetros de DFT 1016, os parâmetros de FFT 1018, as frequências formantes 1020, ou uma combinação dos mesmos, podem corresponder aos primeiros parâmetros de fala 472 e a amostra de PCM particular pode corresponder ao primeiro sinal de fala substituto 172.
[0168] O banco de dados 1024 ilustra exemplos de parâmetros de um sinal de fala substituto que podem ser usados por um módulo de processamento de sinal para comparar um sinal de entrada de fala a uma pluralidade de sinais de fala substitutos durante uma busca por um sinal de fala substituto correspondente. O módulo de processamento de sinal pode gerar um sinal processado substituindo-se uma porção do sinal de entrada de fala pelo sinal de fala substituto correspondente. O sinal processado pode ter uma melhor qualidade de áudio do que o sinal de entrada de fala.
[0169] Referindo-se à Figura 11, um aspecto particular de um sistema pé revelado e designado genericamente como 1100. O sistema 1100 pode realizar uma ou mais operações descritas com referência aos sistemas 100-200 e 400-900 das Figuras 1 a 2 e 4 a 9.
[0170] O sistema 1100 pode incluir um servidor 1106 acoplado ou em comunicação com o primeiro dispositivo 102 por meio da rede 120. O servidor 1106 pode incluir um processador 1160 eletricamente acoplado a uma memória 1176. O processador 1160 pode ser eletricamente acoplado, por meio de um transceptor 1180, à rede 120. Um transceptor (por exemplo, o transceptor 1180) pode incluir um receptor, um transmissor ou ambos. Um receptor pode incluir uma ou mais dentre uma antena, uma interface de rede ou uma combinação da antena e da interface de rede. Um transmissor pode incluir uma ou mais dentre uma antena, uma interface de rede ou uma combinação da antena e da interface de rede. O processador 1160 pode incluir, ou pode ser eletricamente acoplado ao gerenciador de sinal de fala 262. A memória 1176 pode incluir o segundo banco de dados 264. O segundo banco de dados 264 pode ser configurado para armazenar os sinais de fala substitutos 112 associados a um usuário particular (por exemplo, o segundo usuário 154 da Figura 1). Por exemplo, o gerenciador de sinal de fala 262 pode gerar os sinais de fala substitutos 112 com base em um sinal de teste, conforme descrito com referência à Figura 2. Os sinais de fala substitutos 112 podem incluir o primeiro sinal de fala substituto 172.
[0171] A memória 1176 pode ser configurada para armazenar um ou mais perfis de voz remotos 1178. Os perfis de voz remotos 1178 podem estar associados a múltiplas pessoas. Por exemplo, os perfis de voz remotos 1178 podem incluir um perfil de voz remoto 1174. O perfil de voz remoto 1174 pode estar associado a uma pessoa (por exemplo, o segundo usuário 154 da Figura 1). Para fins de ilustração, o perfil de voz remoto 1174 pode incluir um identificador 1168 (por exemplo, um identificador de usuário) associado ao segundo usuário 154. Outro perfil de voz remoto dos perfis de voz remotos 1178 pode estar associado a outra pessoa (por exemplo, o primeiro usuário 152).
[0172] O perfil de voz remoto 1174 pode estar associado aos sinais de fala substitutos 112. Por exemplo, o perfil de voz remoto 1174 pode incluir conteúdo de fala 1170 associado aos sinais de fala substitutos 112. Para fins de ilustração, o conteúdo de fala 1170 pode corresponder a um sinal de fala ou um modelo de fala do segundo usuário 154. O conteúdo de fala 1170 pode ter por base os recursos extraídos de um ou mais dos sinais de fala substitutos 112. O perfil de voz remoto 1174 pode indicar que os sinais de fala substitutos 112 correspondem a dados de áudio que têm uma primeira duração de reprodução. Por exemplo, o sinal de teste usado para gerar os sinais de fala substitutos 112, conforme descrito com referência à Figura 2, pode ter a primeira duração de reprodução.
[0173] O primeiro dispositivo 102 pode incluir um processador 1152 eletricamente acoplado, por meio de um transceptor 1150, à rede 120. O processador 1152 pode ser eletricamente acoplado a uma memória 1132. A memória 1132 pode incluir o primeiro banco de dados 124. O primeiro banco de dados 124 pode ser configurado para armazenar sinais de fala substitutos locais 1112. O processador 1152 pode incluir ou pode ser eletricamente acoplado ao módulo de processamento de sinal 122. A memória 1132 pode ser configurada para armazenar um ou mais perfis de voz local 1108. Por exemplo, os perfis de voz local 1108 pode incluir um perfil de voz local 1104 associado a um usuário particular (por exemplo, o segundo usuário 154 da Figura 1). O primeiro dispositivo 102 pode ser eletricamente acoplado ou pode incluir pelo menos um alto-falante (por exemplo, os alto-falantes 142), um visor 1128, um dispositivo de entrada 1134 (por exemplo, uma tela sensível ao toque, um teclado, um mouse ou um microfone), ou uma combinação dos mesmos.
[0174] Durante a operação, o módulo de processamento de sinal 122 pode receber um ou mais perfis de voz remotos (por exemplo, o perfil de voz remoto 1174) dos perfis de voz remotos 1178 a partir do servidor 1106. O módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado a uma pessoa (por exemplo, o segundo usuário 154 da Figura 1) com base no identificador 1168, no conteúdo de fala 1170 ou em ambos. Por exemplo, o módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado ao segundo usuário 154 em resposta à determinação de que o identificador 1168 (por exemplo, um identificador de usuário) corresponde ao segundo usuário 154. Como outro exemplo, o módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado ao segundo usuário 154 em resposta à determinação de que o conteúdo de fala 1170 corresponde ao segundo usuário 154. O módulo de processamento de sinal 122 pode gerar o segundo conteúdo de fala (por exemplo, um modelo de fala) com base nos sinais de fala substitutos locais 1112. O módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado ao segundo usuário 154 em resposta à determinação de que uma diferença entre o conteúdo de fala 1170 e o segundo conteúdo de fala satisfaz (por exemplo, é menor do que) um limite. Por exemplo, o conteúdo de fala 1170 pode corresponder a recursos associados aos um ou mais dos sinais de fala substitutos 112. O segundo conteúdo de fala pode corresponder a um modelo de fala do segundo usuário 154. O módulo de processamento de sinal 122 pode determinar um valor de confiança que indica se os recursos correspondem ao modelo de fala. O módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado ao segundo usuário 154 em resposta à determinação de que o valor de confiança satisfaz (por exemplo, é maior do) um limite de confiança.
[0175] O módulo de processamento de sinal 122 pode selecionar o perfil de voz local 1104 para o gerenciamento de perfil em resposta à determinação de que o perfil de voz local 1104 e o perfil de voz remoto 1174 estão associados à mesma pessoa (por exemplo, o segundo usuário 154). O módulo de processamento de sinal 122 pode, em resposta à seleção do perfil de voz local 1104, gerar uma interface de usuário gráfica (GUI) 1138 para habilitar o gerenciamento de perfil pelo primeiro usuário 152, enviar uma solicitação de atualização 1110 para o servidor 1106 para atualizar o perfil de voz local 1104 ou ambos, conforme descrito no presente documento.
[0176] Em uma implantação particular, o módulo de processamento de sinal 122 pode enviar uma solicitação de perfil 1120 para o servidor 1106. A solicitação de perfil 1120 pode indicar o perfil de voz local 1104, o perfil de voz remoto 1174 ou ambos. Por exemplo, a solicitação de perfil 1120 pode incluir o identificador 1168 associado ao segundo usuário 154. O gerenciador de sinal de fala 262 pode enviar o perfil de voz remoto 1174 para o primeiro dispositivo 102 em resposta ao recebimento da solicitação de perfil 1120.
[0177] Em um aspecto particular, o módulo de processamento de sinal 122 pode receber a entrada de usuário 1140, por meio do dispositivo de entrada 1134, que indica quando a solicitação de perfil 1120 deve ser enviada para o servidor 1106. O módulo de processamento de sinal 122 pode enviar a solicitação de perfil 1120 com base na entrada de usuário 1140. Por exemplo, o módulo de processamento de sinal 122 pode enviar a solicitação de perfil 1120 para o servidor 1106 em resposta ao recebimento da entrada de usuário 1140 e à determinação de que a entrada de usuário 1140 indica que a solicitação de perfil 1120 deve ser enviada para o servidor 1106 mediante o recebimento da entrada de usuário 1140, em um tempo particular e/ou em resposta a uma condição particular ser satisfeita. Como outro exemplo, o módulo de processamento de sinal 122 pode enviar periodicamente múltiplas instâncias da solicitação de perfil 1120 para o servidor 1106. Em um aspecto particular, o módulo de processamento de sinal 122 pode enviar a solicitação de perfil 1120 para o servidor 1106 em resposta à determinação de que um aplicativo particular (por exemplo, um aplicativo de gerenciamento de perfil) do primeiro dispositivo 102 está em um modo ativado.
[0178] O módulo de processamento de sinal 122 pode gerar a GUI 1138 subsequente à seleção do perfil de voz local 1104. Em uma implantação particular, a GUI 1138 pode corresponder à GUI 300 da Figura 3. A GUI 1138 pode incluir uma representação do perfil de voz local 1104, uma representação do perfil de voz remoto 1174 ou ambos. Por exemplo, a GUI 1138 pode indicar a primeira duração de reprodução associada aos sinais de fala substitutos 112 correspondentes ao perfil de voz remoto 1174. Para fins de ilustração, a primeira barra 302, a segunda barra 314 ou a terceira barra 316 da Figura 3 podem indicar a primeira duração de reprodução quando o perfil de voz remoto 1174 corresponder a "Randal Hughes", "Sabrina Sanders", ou "Brett Dean", respectivamente. Cada uma dentre a primeira barra 302, a segunda barra 314 e a terceira barra 316 pode estar associada a um perfil de voz remoto distinto dos perfis de voz remotos 1178. Por exemplo, a primeira barra 302 pode estar associada ao perfil de voz remoto 1174, a segunda barra 314 pode estar associada a um segundo perfil de voz remoto dentre os perfis de voz remotos 1178 e a terceira barra 316 pode estar associada a um terceiro perfil de voz remoto dentre os perfis de voz remotos 1178.
[0179] Em um aspecto particular, a GUI 1138 pode indicar uma segunda duração de reprodução associada aos sinais de fala substitutos locais 1112 correspondentes ao perfil de voz local 1104. Para fins de ilustração, a primeira barra 302, a segunda barra 314 ou a terceira barra 316 da Figura 3 pode indicar a segunda duração de reprodução quando o perfil de voz local 1104 corresponder a "Randal Hughes", "Sabrina Sanders", ou "Brett Dean", respectivamente. Cada uma dentre a primeira barra 302, a segunda barra 314 e a terceira barra 316 pode estar associada a um perfil de voz local distinto dos perfis de voz locais 1108. Por exemplo, a primeira barra 302 pode estar associada ao perfil de voz local 1104, a segunda barra 314 pode estar associada a um segundo perfil de voz local dentre os perfis de voz locais 1108 e a terceira barra 316 pode estar associada a um terceiro perfil de voz local dentre os perfis de voz locais 1108. Em uma implantação particular, a GUI 1138 pode indicar a primeira duração de reprodução associada ao perfil de voz remoto 1174 e a segunda duração de reprodução associada ao perfil de voz local 1104, em que o perfil de voz remoto 1174 e o perfil de voz local 1104 estão associados à mesma pessoa (por exemplo, o segundo usuário 154 da Figura 1). O primeiro usuário 152 pode determinar se deve atualizar o perfil de voz local 1104 com base na GUI 1138. Por exemplo, se o primeiro usuário 152 determinar que o perfil de voz local 1104 corresponde a uma duração de reprodução curta, o primeiro usuário 152 pode decidir atualizar o perfil de voz local 1104 com base no perfil de voz remoto 1174. Como outro exemplo, o primeiro usuário 152 pode reduzir uma frequência de atualizações abstendo-se de usar o perfil de voz remoto 1174 para atualizar o perfil de voz local 1104 em resposta à determinação de que a GUI 1138 indica que o perfil de voz remoto 1174 corresponde a uma duração de reprodução curta. A redução da frequência de atualizações pode conservar os recursos (por exemplo, potência, largura de banda ou ambos).
[0180] A GUI 1138 pode indicar uma opção para especificar quando uma solicitação de atualização 1110 associada a um perfil de voz (por exemplo, o perfil de voz local 1104 ou o perfil de voz remoto 1174) deve ser enviada. O módulo de processamento de sinal 122 pode fornecer a GUI 1138 ao visor 1128. Por exemplo, a opção pode corresponder ao limite de auto-atualização 312 ou à opção de adicionar 308. O módulo de processamento de sinal 122 pode receber a entrada de usuário 1140 correspondente à opção por meio do dispositivo de entrada 1134 a partir do primeiro usuário 152. A entrada de usuário 1140 pode indicar quando a solicitação de atualização 1110 deve ser enviada. Por exemplo, o primeiro usuário 152 pode aumentar ou reduzir o limite de auto-atualização 312. O módulo de processamento de sinal 122 pode enviar a solicitação de atualização 1110 em resposta à determinação de que a primeira duração de reprodução satisfaz (por exemplo, é maior ou igual) o limite de auto-atualização 312. Para fins de ilustração, o módulo de processamento de sinal 122 pode enviar a solicitação de atualização 1110 em resposta à determinação de que o perfil de voz remoto 1174 indica que a primeira duração de reprodução correspondente aos sinais de fala substitutos 112 satisfaz o limite de auto- atualização 312. O módulo de processamento de sinal 122 pode, portanto, reduzir uma frequência de atualização abstendo-se de enviar a solicitação de atualização 1110 quando a primeira duração de reprodução não satisfaz (por exemplo, é menor do que) o limite de auto-atualização 312. Como outro exemplo, o primeiro usuário 152 pode selecionar uma barra particular (por exemplo, a primeira barra 302) associada a um perfil de voz (por exemplo, o perfil de voz remoto 1174, o perfil de voz local 1104 ou ambos) e pode selecionar a opção de adicionar 308. O módulo de processamento de sinal 122 pode enviar a solicitação de atualização 1110 que indica o perfil de voz (por exemplo, o perfil de voz remoto 1174, o perfil de voz local 1104 ou ambos) para o servidor 1106 em resposta ao recebimento da entrada de usuário 1140 que indica uma seleção da opção de adicionar 308 e da primeira barra 302.
[0181] Em uma implantação particular, a GUI 1138 pode incluir uma opção de especificar que uma solicitação de atualização (por exemplo, a solicitação de atualização 1110) associada a um perfil de voz (por exemplo, o perfil de voz remoto 1174, o perfil de voz local 1104 ou ambos) deve ser enviada periodicamente (por exemplo, diariamente, semanalmente ou, mensalmente) para o servidor 1106. O módulo de processamento de sinal 122 pode enviar periodicamente múltiplas instâncias da solicitação de atualização 1110 para o servidor 1106, por exemplo, em resposta ao recebimento da entrada de usuário 1140 que indica que uma solicitação de atualização deve ser enviada periodicamente. Em um aspecto particular, a entrada de usuário 1140 pode indicar um limite de tempo de atualização. O módulo de processamento de sinal 122 pode determinar que uma primeira atualização associada ao perfil de voz (por exemplo, o perfil de voz remoto 1174, o perfil de voz local 1104 ou ambos) foi recebida a partir do servidor 1106 em um primeiro tempo. O módulo de processamento de sinal 122 pode, em um segundo tempo, determinar uma diferença entre o primeiro tempo e o segundo tempo. O módulo de processamento de sinal 122 pode enviar a solicitação de atualização 1110 para o servidor 1106 em resposta à determinação de que a diferença satisfaz o limite de tempo de atualização indicado pela entrada de usuário 1140.
[0182] Em uma implantação particular, a GUI 1138 pode incluir uma opção de especificar quando deve se abster de enviar uma solicitação de atualização (por exemplo, a solicitação de atualização 1110) associada a um perfil de voz (por exemplo, o perfil de voz remoto 1174, o perfil de voz local 1104 ou ambos). A opção pode corresponder a um limite de interrupção de atualização, um limite de uso de recurso ou ambos. Por exemplo, o módulo de processamento de sinal 122 pode abster-se de enviar a solicitação de atualização 1110 para o servidor 1106 em resposta à determinação de que a segunda duração de reprodução associada aos sinais de fala substitutos locais 1112 satisfaz (por exemplo, é maior ou igual) o limite de interrupção de atualização. Para fins de ilustração, o primeiro usuário 152 pode especificar o limite de interrupção de atualização de modo que o módulo de processamento de sinal 122 descontinue automaticamente a atualização do perfil de voz local 1104 quando a segunda duração de reprodução correspondente aos sinais de fala substitutos locais 1112 satisfizer (por exemplo, for maior ou igual) o limite de interrupção de atualização. Como outro exemplo, o módulo de processamento de sinal 122 pode abster-se de enviar a solicitação de atualização 1110 para o servidor 1106 em resposta à determinação de que um uso de recurso (por exemplo, potência de bateria restante, memória disponível, uso de rede de ciclo de cobrança ou uma combinação dos mesmos) satisfaz o limite de uso de recurso. Por exemplo, o módulo de processamento de sinal 122 pode abster-se de enviar a solicitação de atualização 1110 para o servidor 1106 quando uma potência de bateria restante satisfizer (por exemplo, for menor do que) um limite de conservação de potência, quando a memória disponível satisfizer (por exemplo, for menor do que) um limite de conservação de memória, quando o uso de rede de ciclo de cobrança satisfizer (por exemplo, for maior do que ou igual) um limite de uso de rede, ou uma combinação dos mesmos.
[0183] Em um aspecto particular, a GUI 1138 pode incluir a opção de excluir 310. O primeiro usuário 152 pode selecionar a primeira barra 302 e a opção de excluir 310. O módulo de processamento de sinal 122 pode enviar uma solicitação de exclusão para o servidor 1106 que indica um perfil de voz correspondente (por exemplo, o perfil de voz remoto 1174) em resposta ao recebimento da entrada de usuário 1140 que indica uma seleção da opção de excluir 310 e da primeira barra 302. O gerenciador de sinal de fala 262 pode excluir os sinais de fala substitutos 112 em resposta ao recebimento da solicitação de exclusão. Em uma implantação particular, o módulo de processamento de sinal 122 pode excluir os sinais de fala substitutos locais 1112 em resposta ao recebimento da entrada de usuário 1140 que indica uma seleção da opção de excluir 310 e da primeira barra 302.
[0184] O gerenciador de sinal de fala 262 pode enviar uma atualização 1102 para o primeiro dispositivo 102 em resposta ao recebimento da solicitação de atualização 1110, conforme descrito no presente documento. O gerenciador de sinal de fala 262 pode atualizar um tempo de última atualização enviada associada ao perfil de voz remoto 1178 e o primeiro dispositivo 102 para indicar quando a atualização 1102 for enviada para o primeiro dispositivo 102. Em uma implantação particular, o gerenciador de sinal de fala 262 pode, em um primeiro tempo, atualizar o tempo de última atualização enviada associada ao primeiro dispositivo 102 e o perfil de voz remoto 1178 para indicar o primeiro tempo em resposta ao recebimento da solicitação de exclusão. Por exemplo, o gerenciador de sinal de fala 262 pode atualizar o tempo de última atualização enviada sem enviar uma atualização para o primeiro dispositivo 102 de modo que os sinais de fala substitutos 112 sejam excluídos de uma atualização subsequente para o primeiro dispositivo 102, conforme descrito no presente documento, enquanto retém os sinais de fala substitutos 112 para fornecer uma atualização associada ao perfil de voz remoto 1178 a outro dispositivo.
[0185] O módulo de processamento de sinal 122 pode receber a atualização 1102 a partir do servidor 1106. A atualização 1102 pode indicar o perfil de voz local 1104, o perfil de voz remoto 1174 ou ambos. Por exemplo, a atualização 1102 pode incluir o identificador 1168 correspondente ao segundo usuário 154 da Figura 1. A atualização 1102 pode incluir dados de fala correspondentes aos sinais de fala substitutos 112. O módulo de processamento de sinal 122 pode adicionar cada um dos sinais de fala substitutos 112 aos sinais de fala substitutos locais 1112. Por exemplo, o módulo de processamento de sinal 122 pode adicionar os dados de fala ao perfil de voz local 1104. Como outro exemplo, o módulo de processamento de sinal 122 pode gerar os sinais de fala substitutos 112 com base nos dados de fala e pode adicionar cada um dos sinais de fala substitutos gerados 112 aos sinais de fala substitutos locais 1112.
[0186] Em um aspecto particular, o módulo de processamento de sinal 122 pode substituir um primeiro segmento 1164 do perfil de voz local 1104 por um segundo segmento 1166 do perfil de voz remoto 1174. Por exemplo, o primeiro segmento 1164 pode corresponder a um sinal de fala substituto 1172 dos sinais de fala substitutos locais 1112. O segundo segmento 1166 pode corresponder ao primeiro sinal de fala substituto 172 dos sinais de fala substitutos 112. O módulo de processamento de sinal 122 pode remover o sinal de fala substituto 1172 dos sinais de fala substitutos locais 1112 e pode adicionar o primeiro sinal de fala substituto 172 aos sinais de fala substitutos locais 1112.
[0187] O primeiro sinal de fala substituto 172 e o sinal de fala substituto 1172 podem corresponder a sons semelhantes (por exemplo, um fonema, um dífono, um trífono, uma sílaba, uma palavra ou uma combinação dos mesmos). Em um aspecto particular, o módulo de processamento de sinal 122 pode substituir o sinal de fala substituto 1172 pelo primeiro sinal de fala substituto 172 em resposta à determinação de que o primeiro sinal de fala substituto 172 tem qualidade de áudio superior (por exemplo, uma razão de sinal para ruído) em relação ao sinal de fala substituto 1172. Em outro aspecto, o módulo de processamento de sinal 122 pode substituir o sinal de fala substituto 1172 pelo primeiro sinal de fala substituto 172 em resposta à determinação de que o sinal de fala substituto 1172 expirou (por exemplo, tem um carimbo de data/hora que excede um limite de expiração).
[0188] Em uma implantação particular, o gerenciador de sinal de fala 262 pode, em um primeiro tempo, enviar uma primeira atualização associada ao perfil de voz remoto 1174 para o primeiro dispositivo 102. O gerenciador de sinal de fala 262 pode atualizar o tempo de última atualização enviada para indicar o primeiro tempo. O gerenciador de sinal de fala 262 pode subsequentemente determinar que os sinais de fala substitutos 112 associados ao perfil de voz remoto 1174 foram gerados subsequentes ao envio da primeira atualização para o primeiro dispositivo 102. Por exemplo, o gerenciador de sinal de fala 262 pode selecionar os sinais de fala substitutos 112 em resposta à determinação de que um carimbo de data/hora correspondente a cada um dos sinais de fala substitutos 112 indica um tempo que é subsequente ao tempo de última atualização enviada. O gerenciador de sinal de fala 262 pode enviar a atualização 1102 para o primeiro dispositivo 102 em resposta à determinação de que os sinais de fala substitutos 112 foram gerados subsequente ao envio da primeira atualização para o primeiro dispositivo 102. Nessa implantação particular, a atualização 1102 pode incluir menos do que todos os sinais de fala substitutos associados ao perfil de voz remoto 1174. Por exemplo, a atualização 1102 pode incluir somente aqueles sinais de fala substitutos 112 que o servidor 1106 não enviou anteriormente para o primeiro dispositivo 102.
[0189] Em um aspecto particular, uma solicitação de atualização 1110 pode indicar se todos os sinais de fala substitutos são solicitados ou se somente os sinais de fala substitutos que não foram enviados anteriormente são solicitados. Por exemplo, o módulo de processamento de sinal 122 pode, em um primeiro tempo, enviar uma primeira atualização para o primeiro dispositivo 102 e pode atualizar o tempo de última atualização enviada para indicar o primeiro tempo. O segundo banco de dados 264 pode incluir segundos sinais de fala substitutos associados ao perfil de voz remoto 1174 que foram gerados antes do primeiro tempo. Os sinais de fala substitutos 112 podem ser gerados subsequente ao primeiro tempo.
[0190] O módulo de processamento de sinal 122 pode enviar a solicitação de atualização 1110 para solicitar todos os sinais de fala substitutos associados ao perfil de voz local 1104. Em um aspecto particular, o módulo de processamento de sinal 122 pode enviar a solicitação de atualização 1110 em resposta à determinação de que os dados de fala associados ao perfil de voz local 1104 foram excluídos no primeiro dispositivo 102. O gerenciador de sinal de fala 262 pode receber a solicitação de atualização 1110. O gerenciador de sinal de fala 262 pode determinar que a solicitação de atualização 1110 corresponde ao perfil de voz remoto 1174 em resposta à determinação de que a solicitação de atualização 1110 inclui o identificador 1168 associado ao segundo usuário 154. O gerenciador de sinal de fala 262 pode enviar a atualização 1102 que inclui todos os sinais de fala substitutos associados ao perfil de voz remoto 1174 em resposta à determinação de que a solicitação de atualização 1110 indica que todos os sinais de fala substitutos correspondentes são solicitados. Alternativamente, o gerenciador de sinal de fala 262 pode enviar a atualização 1102 que inclui menos do que todos os sinais de fala substitutos associados ao perfil de voz remoto 1174 em resposta à determinação de que a solicitação de atualização 1110 indica que somente aqueles sinais de fala substitutos que não foram enviados anteriormente para o primeiro dispositivo 102 são solicitados. Por exemplo, a atualização 1102 pode incluir os sinais de fala substitutos 112 que têm um carimbo de data/hora que indica um tempo (por exemplo, um tempo de geração) que é subsequente ao tempo de última atualização enviada.
[0191] Em um aspecto particular, o gerenciador de sinal de fala 262 pode enviar a atualização 1102 para o primeiro dispositivo 102 independentemente do recebimento da solicitação de atualização 1110. Por exemplo, o gerenciador de sinal de fala 262 pode enviar a atualização 1102 periodicamente. Como outro exemplo, o gerenciador de sinal de fala 262 pode determinar uma duração de reprodução associada aos sinais de fala substitutos (por exemplo, os sinais de fala substitutos 112) que têm um carimbo de data/hora que indica um tempo (por exemplo, um tempo de geração) que excede o tempo de última atualização enviada. O gerenciador de sinal de fala 262 pode enviar os sinais de fala substitutos 112 em resposta à determinação de que a duração de reprodução satisfaz o limite de auto- atualização.
[0192] Os sinais de fala substitutos locais 1112 podem ser usados para gerar sinais de fala processados, conforme descrito no presente documento. O primeiro usuário 152 pode fornecer uma seleção 1136 que indica o perfil de voz local 1104 para o primeiro dispositivo 102. Por exemplo, o primeiro dispositivo 102 pode receber a seleção 1136 por meio do dispositivo de entrada 1134. Em um aspecto particular, a seleção 1136 pode corresponder a uma chamada de voz com um segundo dispositivo associado ao perfil de voz local 1104. Por exemplo, o perfil de voz local 1104 pode estar associado a um perfil de usuário do segundo usuário 154 da Figura 1. O perfil de usuário pode indicar o segundo dispositivo. O primeiro usuário 152 pode iniciar a chamada de voz ou pode aceitar a chamada de voz a partir do segundo dispositivo. O módulo de processamento de sinal 122 pode receber um sinal de áudio de entrada 1130 subsequente ao recebimento da seleção 1136. Por exemplo, o módulo de processamento de sinal 122 pode receber o sinal de áudio de entrada 1130 durante a chamada de voz. O módulo de processamento de sinal 122 pode comparar uma primeira porção 1162 do sinal de áudio de entrada 1130 aos sinais de fala substitutos locais 1112. Os sinais de fala substitutos locais 1112 podem incluir o primeiro sinal de fala substituto 172. O módulo de processamento de sinal 122 pode determinar que a primeira porção 1162 é correspondente (por exemplo, é semelhante a) ao primeiro sinal de fala substituto 172. O módulo de processamento de sinal 122 pode gerar o primeiro sinal de fala processado 116 substituindo-se a primeira porção 1162 pelo primeiro sinal de fala substituto 172 em resposta à determinação de que a primeira porção 1162 é correspondente ao primeiro sinal de fala substituto 172, conforme descrito com referência à Figura 1. O primeiro sinal de fala substituto 172 pode ter uma qualidade de áudio superior em relação à primeira porção 1162. O módulo de processamento de sinal 122 pode emitir o primeiro sinal de fala processado 116, por meio dos alto-falantes 142, para o primeiro usuário 152.
[0193] Em uma implantação particular, o servidor 1106 pode corresponder a um dispositivo (por exemplo, o dispositivo móvel 104 da Figura 1) associado ao perfil de voz local 1104. Por exemplo, uma ou mais das operações descritas no presente documento como sendo realizadas pelo servidor 1106 podem ser realizadas pelo dispositivo móvel 104. Nessa implantação particular, uma ou mais mensagens (por exemplo, a solicitação de atualização 1110, a solicitação de perfil 1120 ou ambos) descritas no presente documento como sendo enviadas pelo primeiro dispositivo 102 para o servidor 1106 podem ser enviadas para o dispositivo móvel 104. De modo semelhante, uma ou mais mensagens (por exemplo, a atualização 1102, o perfil de voz remoto 1174 ou ambos) descrito no presente documento como sendo recebido pelo primeiro dispositivo 102 a partir do servidor 1106 pode ser recebido a partir do dispositivo móvel 104.
[0194] O sistema 1100 pode aprimorar a experiência de usuário fornecendo-se um sinal de fala processado a um usuário, em que o sinal de fala processado é gerado substituindo-se uma porção de um sinal de áudio de entrada por um sinal de fala substituto, e em que o sinal de fala substituto tem uma qualidade de áudio superior em relação à porção do sinal de áudio de entrada. O sistema 1100 também pode fornecer uma GUI para habilitar um usuário para gerenciar perfis de voz.
[0195] Referindo-se à Figura 12, um aspecto particular de um sistema é revelado e designado genericamente como 1200. O sistema 1200 pode realizar uma ou mais operações descritas com referência aos sistemas 100-200, 400-900 e 1100 das Figuras 1 a 2, 4 a 9 e 11. O sistema 1200 pode incluir um ou mais componentes do sistema 1100 da Figura 11. Por exemplo, o sistema 1200 pode incluir o servidor 1106 acoplado ou em comunicação com o primeiro dispositivo 102 por meio da rede 120. O primeiro dispositivo 102 pode estar acoplado ou pode incluir um ou mais microfones 1244. O primeiro dispositivo 102 pode incluir o primeiro banco de dados 124 da Figura 1. O primeiro banco de dados 124 pode ser configurado para armazenar um ou mais sinais de fala substitutos locais 1214. Os sinais de fala substitutos locais 1214 podem corresponder a um perfil de voz local 1204 que está associado a uma pessoa (por exemplo, o primeiro usuário 152).
[0196] Durante operação, o módulo de processamento de sinal 122 pode receber um sinal de treinamento de fala (por exemplo, um sinal de áudio de entrada 1238), por meio dos microfones 1244, a partir do primeiro usuário 152. Por exemplo, o módulo de processamento de sinal 122 pode receber o sinal de áudio de entrada 1238 durante a chamada de voz. O módulo de processamento de sinal 122 pode gerar sinais de fala substitutos 1212 com base no sinal de áudio de entrada 1238, conforme descrito com referência à Figura 2. O módulo de processamento de sinal 122 pode adicionar os sinais de fala substitutos 1212 aos sinais de fala substitutos locais 1214. O módulo de processamento de sinal 122 pode fornecer uma atualização 1202 ao servidor 206. A atualização 1202 pode incluir dados de fala correspondentes aos sinais de fala substitutos 1212. A atualização 1202 pode incluir um identificador associado ao primeiro usuário 152, ao perfil de voz local 1204 ou a ambos. O servidor 206 pode receber a atualização 1202 e o gerenciador de sinal de fala 262 pode determinar que a atualização 1202 está associada a um perfil de voz remoto 1274 dos perfis de voz remotos 1178 com base no identificador da atualização 1202.
[0197] Em uma implantação particular, o gerenciador de sinal de fala 262 pode determinar que nenhum dos perfis de voz remotos 1178 corresponde à atualização 1202. Em resposta, o gerenciador de sinal de fala 262 pode adicionar o perfil de voz remoto 1274 aos perfis de voz remotos 1178. O perfil de voz remoto 1274 pode estar associado (por exemplo, incluir) ao identificador da atualização 1202. O gerenciador de sinal de fala 262 pode armazenar os sinais de fala substitutos 1212 no segundo banco de dados 264 e pode associar os sinais de fala substitutos armazenados 1212 ao perfil de voz remoto 1274. Por exemplo, o gerenciador de sinal de fala 262 pode gerar os sinais de fala substitutos 1212 com base nos dados de fala e pode armazenar os sinais de fala substitutos 1212, os dados de fala ou ambos, no segundo banco de dados 264.
[0198] O gerenciador de sinal de fala 262 pode determinar um carimbo de data/hora (por exemplo, um carimbo de data/hora de geração) associado aos sinais de fala substitutos 1212 e pode armazenar o carimbo de data/hora no segundo banco de dados 264, na memória 1176 ou em ambos. Por exemplo, o carimbo de data/hora pode indicar um tempo em que o sinal de áudio de entrada 1238 é recebido pelo primeiro dispositivo 102, um tempo em que os sinais de fala substitutos 1212 são gerados pelo módulo de processamento de sinal 122, um tempo em que a atualização 1202 é enviada pelo primeiro dispositivo 102, um tempo em que a atualização 1202 é recebida pelo servidor 1106, um tempo em que os sinais de fala substitutos 1212 são armazenados no segundo banco de dados 264 ou uma combinação dos mesmos. O gerenciador de sinal de fala 262 pode determinar uma duração de reprodução associada aos sinais de fala substitutos 1212 e pode armazenar a duração de reprodução no segundo banco de dados 264, na memória 1176 ou em ambos. Por exemplo, a duração de reprodução pode consistir em uma duração de reprodução do sinal de áudio de entrada 1238. Em uma implantação particular, a atualização 1202 pode indicar a duração de reprodução e o gerenciador de sinal de fala 262 pode determinar a duração de reprodução com base na atualização 1202.
[0199] Em um aspecto particular, o primeiro dispositivo 102 pode enviar a atualização 1202 para o servidor 1106 em resposta ao recebimento de uma solicitação de atualização 1210 a partir do servidor 1106 ou outro dispositivo. Por exemplo, o servidor 1106 pode enviar a solicitação de atualização 1210 para o primeiro dispositivo 102 periodicamente ou em resposta à detecção de um evento (por exemplo, inicialização de uma chamada de voz). O módulo de processamento de sinal 122 pode enviar a atualização 1202 em resposta ao recebimento da solicitação de atualização 1210.
[0200] Em um aspecto particular, o módulo de processamento de sinal 122 pode enviar a atualização 1202 em resposta à determinação de que um usuário (por exemplo, o primeiro usuário 152) do primeiro dispositivo 102 autorizou o envio dos sinais de fala substitutos 1212 (ou dos dados de fala) para o servidor 1106. Por exemplo, o módulo de processamento de sinal 122 pode receber entrada de usuário 1240, por meio do dispositivo de entrada 1134, a partir do primeiro usuário 152. O módulo de processamento de sinal 122 pode enviar a atualização 1202 para o servidor 1106 em resposta à determinação de que a entrada de usuário 1240 indica que o primeiro usuário 152 autorizou o envio dos sinais de fala substitutos 1212 para o servidor 1106.
[0201] Em um aspecto particular, o módulo de processamento de sinal 122 pode determinar que um usuário (por exemplo, o primeiro usuário 152) do primeiro dispositivo 102 autorizou o envio dos sinais de fala substitutos 1212 (ou os dados de fala) para um ou mais dispositivos associados a um perfil de usuário particular (por exemplo, um perfil de usuário do segundo usuário 154 da Figura 1). A atualização 1202 pode indicar os um ou mais dispositivos, o perfil de usuário particular ou uma combinação dos mesmos, com os quais os sinais de fala substitutos 1212 têm autorização para serem compartilhados. O módulo de processamento de sinal 122 pode armazenar dados de autorização que indicam os um ou mais dispositivos, o perfil de usuário particular ou uma combinação dos mesmos, no segundo banco de dados 264, na memória 1176 ou em ambos. O módulo de processamento de sinal 122 pode enviar uma atualização que inclui os dados associados aos sinais de fala substitutos 1212 para um dispositivo particular, conforme descrito com referência à Figura 11, em resposta à determinação de que os dados de autorização indicam o particular dispositivo.
[0202] Em um aspecto particular, o módulo de processamento de sinal 122 pode gerar uma GUI 1232 que indica uma opção de selecionar quando deve enviar a atualização 1202 para o servidor 1106. O módulo de processamento de sinal 122 pode fornecer a GUI 1232 ao visor 1128. O módulo de processamento de sinal 122 pode receber a entrada de usuário 1240, por meio do dispositivo de entrada 1134, a partir do primeiro usuário 152. O módulo de processamento de sinal 122 pode enviar a atualização 1202 em resposta ao recebimento da entrada de usuário 1240. Em um aspecto particular, a entrada de usuário 1240 pode indicar que a atualização 1202 (por exemplo, os sinais de fala substitutos 1212 ou os dados de fala) deve ser enviada periodicamente (por exemplo, de hora em hora, diariamente, semanalmente ou mensalmente) ou pode indicar um limite de atualização (por exemplo, 4 horas). Em resposta, o módulo de processamento de sinal 122 pode enviar periodicamente múltiplas instâncias da atualização 1202 para o servidor 1106 periodicamente ou com base no limite de atualização.
[0203] O sistema 1200 pode habilitar um dispositivo para fornecer sinais de fala substitutos associados a um usuário para outro dispositivo. O outro dispositivo pode gerar um sinal de fala processado com base em um sinal de áudio de entrada correspondente ao usuário. Por exemplo, o outro dispositivo pode gerar o sinal de fala processado substituindo-se uma porção do sinal de áudio de entrada por um sinal de fala substituto. O sinal de fala substituto pode ter uma qualidade de áudio superior em relação à porção do sinal de áudio de entrada.
[0204] Referindo-se à Figura 13, um aspecto particular de um sistema é revelado e designado genericamente como 1300. O sistema 1300 pode realizar uma ou mais operações descritas com referência aos sistemas 100-200, 400-900 e 1100-1200 das Figuras 1 a 2, 4 a 9 e 11 a 12. O sistema 1300 pode incluir um ou mais componentes do sistema 1100 da Figura 11, pelo sistema 1200 da Figura 12 ou por ambos. Por exemplo, o sistema 1300 inclui o primeiro dispositivo 102 e o processador 1152. O primeiro dispositivo 102 pode estar acoplado aos microfones 1244, aos alto-falantes 142 ou ambos. O processador 1152 pode estar acoplado ou pode incluir o módulo de processamento de sinal 122. O módulo de processamento de sinal 122 pode estar acoplado a um detector de modo 1302, um selecionador de modo 1304, um conversor de texto em fala 1322 ou uma combinação dos mesmos.
[0205] Um ou mais componentes do sistema 1300 podem ser incluídos em pelo menos um dentre um veículo, um leitor eletrônico (e-reader) dispositivo, um dispositivo móvel, um dispositivo de captura acústico, uma televisão, um dispositivo de comunicação, um computador do tipo tablet, um telefone inteligente, um dispositivo de navegação, um computador do tipo laptop, um dispositivo vestível ou um dispositivo de computação. Por exemplo, um ou mais dos alto-falantes 142 podem ser incluídos em um veículo ou um dispositivo móvel. O dispositivo móvel pode incluir um dispositivo e-reader, um computador do tipo tablet, um dispositivo de comunicação, um telefone inteligente, um dispositivo de navegação, um computador do tipo laptop, um dispositivo vestível, um dispositivo de computação ou uma combinação dos mesmos. A memória 1132 pode ser incluída em um dispositivo de armazenamento que é acessível pelo ao menos um dentre o veículo, o dispositivo e-reader, o dispositivo móvel, o dispositivo de captura acústico, a televisão, o dispositivo de comunicação, o computador do tipo tablet, o telefone inteligente, o dispositivo de navegação, o computador do tipo laptop, o dispositivo vestível ou o dispositivo de computação.
[0206] Durante operação, o módulo de processamento de sinal 122 pode receber um sinal de treinamento de fala 1338, por meio dos microfones 1244, a partir do primeiro usuário 152. Em uma implantação particular, o sinal de treinamento de fala 1338 pode ser independente de texto e pode ser recebido durante o uso geral ou "normal" do primeiro dispositivo 102. Por exemplo, o primeiro usuário 152 pode ativar um modo de captura "sempre ativado" do módulo de processamento de sinal 122 e o módulo de processamento de sinal 122 pode receber o sinal de treinamento de fala 1338 no segundo plano conforme o primeiro usuário 152 fala nas cercanias dos microfones 1244. O módulo de processamento de sinal 122 pode gerar os sinais de fala substitutos 1212 com base no sinal de treinamento de fala 1338, conforme descrito com referência às Figuras 2 e 12. Os sinais de fala substitutos 1212 podem incluir um primeiro sinal de fala substituto 1372. O módulo de processamento de sinal 122 pode adicionar os sinais de fala substitutos 112, dados de fala associados aos sinais de fala substitutos 112 ou ambos, aos sinais de fala substitutos locais 1214, conforme descrito com referência à Figura 12.
[0207] O detector de modo 1302 pode ser configurado para detectar um modo de uso 1312 dentre uma pluralidade de modos de uso (por exemplo, um modo de leitura, um modo de conversação, um modo de canto, um modo de comando e controle ou uma combinação dos mesmos). O modo de uso 1312 pode estar associado ao sinal de treinamento de fala 1338. Por exemplo, o detector de modo 1302 pode detectar o modo de uso 1312 com base em uma definição de modo de uso 1362 do módulo de processamento de sinal 122 quando o sinal de treinamento de fala 1338 for recebido. Para fins de ilustração, o módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para o modo de leitura em resposta à detecção de que um primeiro aplicativo (por exemplo, um aplicativo leitor ou outro aplicativo de leitura) do primeiro dispositivo 102 está ativado. O módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para o modo de conversação em resposta à detecção de uma chamada de voz em curso ou que um segundo aplicativo (por exemplo, um aplicativo de conversação por áudio e/ou um aplicativo de conferência por vídeo) do primeiro dispositivo 102 está ativado.
[0208] O módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para o modo de canto em resposta à determinação de que um terceiro aplicativo (por exemplo, um aplicativo de canto) do primeiro dispositivo 102 está ativado. Em um aspecto particular, o módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para o modo de canto em resposta à determinação de que o sinal de treinamento de fala 1338 corresponde ao canto. Por exemplo, o módulo de processamento de sinal 122 pode extrair recursos do sinal de treinamento de fala 1338 e pode determinar que o sinal de treinamento de fala 1338 corresponde ao canto com base nos recursos extraídos e um classificador (por exemplo, uma máquina de vetores de suporte (SVM)). O classificador pode detectar o canto analisando-se uma duração de fala de voz, uma taxa de fala vozeada, uma taxa de pausas de fala, uma medida de semelhança entre intervalos de fala vozeada (por exemplo, correspondente a sílabas), ou uma combinação dos mesmos.
[0209] O módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para o modo de comando e controle em resposta à determinação de que um quarto aplicativo (por exemplo, um aplicativo de assistente pessoal) do primeiro dispositivo 102 está ativado. Em um aspecto particular, o módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para o modo de comando e controle em resposta à determinação de que o sinal de treinamento de fala 1338 inclui um palavra-chave de comando (por exemplo, "Ativar"). Por exemplo, o módulo de processamento de sinal 122 pode usar técnicas de análise de fala para determinar que o sinal de treinamento de fala 1338 inclui a palavra- chave de comando. Um dentre o modo de leitura, o modo de conversação, o modo de canto ou o modo de comando e controle pode corresponder a um modo de uso "padrão". A definição de modo de uso 1362 pode corresponder ao modo de uso padrão a menos que sobreposta. Em um aspecto particular, o módulo de processamento de sinal 122 pode estabelecer a definição de modo de uso 1362 para um modo de uso particular indicado pela entrada de usuário. O detector de modo 1302 pode fornecer o modo de uso 1312 para o módulo de processamento de sinal 122.
[0210] O selecionador de modo 1304 pode ser configurado para detectar um domínio demográfico 1314 dentre uma pluralidade de domínios demográficos (por exemplo, um domínio de linguagem, um domínio de gênero, um domínio de idade ou uma combinação dos mesmos). O domínio demográfico 1314 pode estar associado ao sinal de treinamento de fala 1338. Por exemplo, o selecionador de modo 1304 pode detectar o domínio demográfico 1314 com base nos dados demográficos (por exemplo, uma linguagem particular, um gênero particular, uma idade particular, ou uma combinação dos mesmos) associados ao primeiro usuário 152. Em um aspecto particular, a memória 1132 pode incluir os dados demográficos em um perfil de usuário associado ao primeiro usuário 152. Como outro exemplo, o selecionador de modo 1304 pode detectar o domínio demográfico 1314 analisando-se o sinal de treinamento de fala 1338 com o uso de um classificador. Para fins de ilustração, o classificador pode classificar o sinal de treinamento de fala 1338 em uma linguagem particular, um gênero particular, uma idade particular ou uma combinação dos mesmos. O domínio demográfico 1314 pode indicar a linguagem particular, o gênero particular, a idade particular, ou uma combinação dos mesmos. O selecionador de modo 1304 pode fornecer o domínio demográfico 1314 para o módulo de processamento de sinal 122.
[0211] O módulo de processamento de sinal 122 pode associar o modo de uso 1312, o domínio demográfico 1314 ou ambos, a cada um dos sinais de fala substitutos 1212. O módulo de processamento de sinal 122 pode determinar uma classificação 1346 associada aos sinais de fala substitutos 1212. A classificação 1346 pode incluir um carimbo de data/hora que indica um tempo e/ou data de quando os sinais de fala substitutos 1212 foram gerados pelo módulo de processamento de sinal 122. A classificação 1346 pode indicar um aplicativo (por exemplo, um aplicativo de leitura) ou componente (por exemplo, uma história particular) do aplicativo que foi ativado quando o sinal de treinamento de fala 1338 foi recebido pelo primeiro dispositivo 102. A classificação 1346 pode indicar uma palavra, uma frase, texto ou uma combinação dos mesmos, correspondente ao sinal de treinamento de fala 1338. O módulo de processamento de sinal 122 pode usar técnicas de análise de fala para classificar o sinal de treinamento de fala 1338 em uma ou mais emoções (por exemplo, alegria, raiva, infelicidade, etc.). A classificação 1346 pode indicar as uma ou mais emoções. O módulo de processamento de sinal 122 pode associar a classificação 1346 a cada um dos sinais de fala substitutos 1212.
[0212] Os sinais de fala substitutos locais 1214 podem incluir um ou mais sinais de fala substitutos adicionais (por exemplo, um segundo sinal de fala substituto 1374) gerados pelo módulo de processamento de sinal 122 com base em um segundo sinal de treinamento de fala, conforme descrito com referência à Figura 2. O segundo sinal de fala substituto 1374 pode estar associado a um segundo modo de uso, um segundo domínio demográfico, uma segunda classificação ou uma combinação dos mesmos.
[0213] O módulo de processamento de sinal 122 pode receber um sinal de fala 1330 a partir do conversor de texto em fala 1322. Por exemplo, o primeiro usuário 152 pode ativar o conversor de texto em fala 1322 e o conversor de texto em fala 1322 pode fornecer o sinal de fala 1330 para o módulo de processamento de sinal 122. O módulo de processamento de sinal 122 pode detectar um modo de uso particular com base na definição de modo de usuário 1362, conforme descrito no presente documento. O módulo de processamento de sinal 122 também pode selecionar um domínio demográfico particular. Por exemplo, o módulo de processamento de sinal 122 pode receber uma entrada de usuário a partir do primeiro usuário 152 que indica um perfil de usuário particular. O módulo de processamento de sinal 122 pode selecionar o domínio demográfico particular com base no dados demográficos correspondentes para o perfil de usuário particular. Como outro exemplo, a entrada de usuário pode indicar uma linguagem particular, uma idade particular, um gênero particular ou uma combinação dos mesmos. O módulo de processamento de sinal 122 pode selecionar o domínio demográfico particular correspondente à linguagem particular, à idade particular, à gênero particular ou uma combinação dos mesmos.
[0214] O módulo de processamento de sinal 122 pode selecionar um sinal de fala substituto particular (por exemplo, o primeiro sinal de fala substituto 1372 ou o segundo sinal de fala substituto 1374) dos sinais de fala substitutos locais 1214 com base no modo de uso particular detectado, no domínio demográfico particular selecionado ou em ambos. Por exemplo, o módulo de processamento de sinal 122 pode comparar uma porção do sinal de fala 1330 a cada um dos sinais de fala substitutos locais 1214. Cada um dentre o primeiro sinal de fala substituto 1372, o segundo sinal de fala substituto 1374 e a porção do sinal de fala 1330 pode corresponder a sons semelhantes. O módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 1372 com base na determinação de que o modo de uso particular corresponde (por exemplo, é correspondente a) ao modo de uso 1312, que o domínio demográfico particular corresponde (por exemplo, é correspondente, pelo menos parcialmente, a) ao domínio demográfico 1314 ou ambos. Portanto, os modos de uso e domínios demográficos podem ser usados para assegurar que a porção do sinal de fala 1330 seja substituída por um sinal de fala substituto (por exemplo, o primeiro sinal de fala substituto 1372) que foi gerado em um contexto semelhante. Por exemplo, quando o sinal de fala 1330 corresponde a um modo de canto, a porção do sinal de fala 1330 pode ser substituída por um sinal de fala substituto que corresponde ao canto de qualidade de áudio superior e não à fala conversacional de qualidade de áudio superior.
[0215] Em um aspecto particular, os sinais de fala substitutos locais 1214 podem estar associados a classificações. Cada uma das classificações pode ter uma prioridade. O módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 1372 comparando-se a porção do sinal de fala 1330 aos sinais de fala substitutos locais 1214 em ordem de prioridade. Por exemplo, o módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 1372 com base, pelo menos parcialmente, na determinação de que um primeiro carimbo de data/hora indicado pela classificação 1346 é subsequente a um segundo carimbo de data/hora indicado pela segunda classificação associada ao segundo sinal de fala substituto 1374. Como outro exemplo, o módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 1372 com base, pelo menos parcialmente, na determinação de que um aplicativo particular (por exemplo, um aplicativo de e-reader) está ativado e que o aplicativo particular é indicado pela classificação 1346 e não indicado pela segunda classificação.
[0216] O módulo de processamento de sinal 122 pode gerar o primeiro sinal de fala processado 116 substituindo-se a porção do sinal de fala 1330 pelo primeiro sinal de fala substituto 1372. O módulo de processamento de sinal 122 pode armazenar o primeiro sinal de fala processado 116 na memória 1132. Alternativa ou adicionalmente, o módulo de processamento de sinal 122 pode emitir o primeiro sinal de fala processado 116, por meio dos alto-falantes 142, para o primeiro usuário 152.
[0217] Em um aspecto particular, o sinal de treinamento de fala 1338 pode ser recebido a partir de um usuário particular (por exemplo, o primeiro usuário 152) e o primeiro sinal de fala processado 116 pode ser emitido para o mesmo usuário (por exemplo, o primeiro usuário 152). Por exemplo, o primeiro sinal de fala processado 116 pode soar semelhante à fala do primeiro usuário 152.
[0218] Em outro aspecto, o sinal de treinamento de fala 1338 pode ser recebido a partir de um usuário particular (por exemplo, um pai) e o primeiro sinal de fala processado 116 pode ser emitido para outro usuário (por exemplo, um filho do pai). Por exemplo, o pai pode ativar um aplicativo de e-reader e levar uma história particular em um primeiro dia. O sinal de treinamento de fala 1338 pode corresponder à fala do pai. O módulo de processamento de sinal 122 pode gerar os sinais de fala substitutos 1212 com base no sinal de treinamento de fala 1338, conforme descrito com referência às Figuras 2 e 12. O módulo de processamento de sinal 122 pode associar o modo de uso 1312 (por exemplo, o modo de leitura) a cada um dos sinais de fala substitutos 1212. O módulo de processamento de sinal 122 pode associar o domínio demográfico 1314 (por exemplo, um adulto, mulher e a linguagem inglesa) a cada um dos sinais de fala substitutos 1212. O módulo de processamento de sinal 122 pode associar a classificação 1346 (por exemplo, a história particular, o aplicativo de e-reader, um carimbo de data/hora correspondente ao primeiro dia, texto correspondente ao sinal de treinamento de fala e uma ou mais emoções correspondentes ao sinal de treinamento de fala 1338) a cada um dos sinais de fala substitutos 1212.
[0219] O outro usuário (por exemplo, o filho) pode ativar o conversor de texto em fala 1322 em um segundo dia. Por exemplo, a criança pode selecionar a história particular e pode selecionar um perfil de usuário do pai. Para fins de ilustração, a criança pode selecionar uma porção subsequente da história particular além da lida anteriormente pelo pai. O conversor de texto em fala 1322 pode gerar o sinal de fala 1330 com base no texto da história particular. O módulo de processamento de sinal 122 pode receber o sinal de fala 1330. O módulo de processamento de sinal 122 pode detectar um modo de usuário particular (por exemplo, o modo de leitura) e pode selecionar um domínio demográfico particular (por exemplo, um adulto, mulher, e linguagem inglesa) correspondente ao perfil de usuário do pai. O módulo de processamento de sinal 122 pode determinar uma classificação particular (por exemplo, a história particular). O módulo de processamento de sinal 122 compara uma porção do sinal de fala 1330 aos sinais de fala substitutos locais 1214 em ordem de prioridade. O módulo de processamento de sinal 122 pode selecionar o primeiro sinal de fala substituto 1372 com base na determinação de que o modo de uso 1312 é correspondente ao modo de uso particular, que a classificação 1346 é correspondente à classificação particular ou ambos. O módulo de processamento de sinal 122 pode gerar o primeiro sinal de fala processado 116 substituindo-se a porção do sinal de fala 1330 pelo primeiro sinal de fala substituto 1372. O módulo de processamento de sinal 122 pode emitir o primeiro sinal de fala processado 116 por meio dos alto-falantes 142 para a criança. O primeiro sinal de fala processado 116 pode soar semelhante à fala do pai. A criança pode, portanto, ter a capacidade de escutar capítulos subsequentes da história particular em uma voz do pai quando o pai estiver indisponível (por exemplo, fora da cidade).
[0220] O sistema 1300 pode, portanto, habilitar a geração de sinais de fala substitutos correspondentes à fala de um usuário com base em um sinal de áudio recebido a partir do usuário. Os sinais de fala substitutos podem ser usados para gerar um sinal de fala processado que soa semelhante à fala do usuário. Por exemplo, o sinal de fala processado pode ser gerado substituindo-se uma porção de um sinal de fala gerado por um conversor de texto em fala por um sinal de fala substituto.
[0221] Referindo-se à Figura 14, um fluxograma de um aspecto ilustrativo particular de um método para a substituição de um sinal de fala é mostrado e é designado genericamente como 1400. O método 1400 pode ser executado pelo módulo de processamento de sinal 122 da Figura 1, o módulo de processamento de sinal 422 da Figura 4, o módulo de processamento de sinal 622 da Figura 6, o módulo de processamento de sinal 722 da Figura 7, ou uma combinação dos mesmos.
[0222] O método 1400 inclui adquirir uma pluralidade de sinais de fala substitutos, em 1402. Por exemplo, o primeiro dispositivo 102 pode adquirir os sinais de fala substitutos 112, conforme descrito adicionalmente com referência à Figura 2.
[0223] O método 1400 também pode incluir receber, em um dispositivo, um sinal de fala de usuário associado a um usuário, em 1404. O sinal de fala de usuário pode ser recebido durante uma chamada de voz. Por exemplo, o primeiro dispositivo 102 pode receber o primeiro sinal de fala de usuário 130 durante uma chamada de voz com o dispositivo móvel 104, conforme descrito adicionalmente com referência à Figura 1.
[0224] O método 1400 pode incluir adicionalmente comparar uma porção do sinal de fala de usuário à pluralidade de sinais de fala substitutos associados ao usuário, em 1406. A pluralidade de sinais de fala substitutos pode ser armazenada em um banco de dados. Por exemplo, o módulo de processamento de sinal 122 da Figura 1 pode comparar a primeira porção 162 do primeiro sinal de fala de usuário 130 aos sinais de fala substitutos 112 armazenados no primeiro banco de dados 124, conforme descrito adicionalmente com referência à Figura 1.
[0225] O método 1400 também pode incluir a determinação de que a porção do sinal de fala de usuário é correspondente a um primeiro sinal de fala substituto dentre a pluralidade de sinais de fala substitutos com base na comparação, em 1408. Por exemplo, o módulo de processamento de sinal 122 da Figura 1 pode determinar que a primeira porção 162 é correspondente ao primeiro sinal de fala substituto 172, conforme descrito com referência à Figura 1.
[0226] O método 1400 pode incluir adicionalmente gerar um sinal de fala processado substituindo-se a porção do sinal de fala de usuário pelo primeiro sinal de fala substituto em resposta à determinação, em 1410. O sinal de fala processado pode ser gerado durante a chamada de voz. Por exemplo, o módulo de processamento de sinal 122 pode gerar o primeiro sinal de fala processado 116 substituindo-se a primeira porção 162 pelo primeiro sinal de fala substituto 172 em resposta à determinação. Em um aspecto particular, o módulo de processamento de sinal 122 pode usar um algoritmo de suavização para reduzir o parâmetro de fala variação correspondente a uma transição entre o primeiro sinal de fala substituto 172 e a outra porção do primeiro sinal de fala processado 116, conforme descrito adicionalmente com referência à Figura 1.
[0227] O método 1400 também pode incluir emitir o sinal de fala processado por meio de um alto- falante, em 1412. Por exemplo, o primeiro dispositivo 102 da Figura 1 pode emitir o primeiro sinal de fala processado 116 por meio dos alto-falantes 142.
[0228] O método 1400 pode incluir adicionalmente modificar o primeiro sinal de fala substituto com base em uma pluralidade de parâmetros de fala do sinal de fala de usuário, em 1414, e que armazena o primeiro sinal de fala substituto modificado no banco de dados, em 1416. Por exemplo, o módulo de processamento de sinal 122 pode modificar o primeiro sinal de fala substituto 172 com base em uma pluralidade de parâmetros de fala do primeiro sinal de fala de usuário 130 para gerar um sinal de fala substituto modificado 176, conforme descrito adicionalmente com referência à Figura 1. O módulo de processamento de sinal 122 pode armazenar o sinal de fala substituto modificado 176 no primeiro banco de dados 124.
[0229] Portanto, o método 1400 pode habilitar a geração de um sinal de fala processado substituindo-se uma porção de um sinal de fala de usuário associado a um usuário por um sinal de fala substituto associado ao mesmo usuário. O sinal de fala processado pode ter uma qualidade de áudio superior em relação ao sinal de fala de usuário.
[0230] O método 1400 da Figura 14 pode ser implantado por um arranjo de portas programável em campo (FPGA) dispositivo, um circuito integrado específico para aplicativo (ASIC), uma unidade de processamento como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), um controlador, outro dispositivo de hardware, dispositivo de firmware ou qualquer combinação dos mesmos. Como um exemplo, o método 1400 da Figura 14 pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura 19.
[0231] Referindo-se à Figura 15, um fluxograma de um aspecto ilustrativo particular de um método para a aquisição de uma pluralidade de sinais de fala substitutos é mostrado e é designado genericamente como 1500. Em um aspecto particular, o método 1500 pode corresponder à operação 1402 da Figura 14. O método 1500 pode ser executado pelo gerenciador de sinal de fala 262 da Figura 2.
[0232] O método 1500 pode incluir receber um sinal de treinamento de fala associado ao usuário, em 1502. Por exemplo, o servidor 206 da Figura 2 pode receber o sinal de treinamento de fala 272 associado ao segundo usuário 154, conforme descrito adicionalmente com referência à Figura 2.
[0233] O método 1500 também pode incluir gerar uma pluralidade de sinais de fala substitutos a partir do sinal de treinamento de fala, em 1504, e armazenar a pluralidade de sinais de fala substitutos no banco de dados, em 1506. Por exemplo, o gerenciador de sinal de fala 262 pode gerar os sinais de fala substitutos 112 a partir do sinal de treinamento de fala 272, conforme descrito adicionalmente com referência à Figura 2. O gerenciador de sinal de fala 262 pode armazenar os sinais de fala substitutos 112 no segundo banco de dados 264.
[0234] Portanto, o método 1500 pode habilitar a aquisição dos sinais de fala substitutos que podem ser usados para substituir uma porção de um sinal de fala de usuário.
[0235] O método 1500 da Figura 15 pode ser implantado por um arranjo de portas programável em campo (FPGA) dispositivo, um circuito integrado específico para aplicativo (ASIC), uma unidade de processamento como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), um controlador, outro dispositivo de hardware, dispositivo de firmware ou qualquer combinação dos mesmos. Como um exemplo, o método 1500 da Figura 15 pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura 19.
[0236] Referindo-se à Figura 16, um fluxograma de um aspecto ilustrativo particular de um método para a substituição de um sinal de fala é mostrado e é designado genericamente como 1600. O método 1600 pode ser executado pelo módulo de processamento de sinal 122 da Figura 1, o módulo de processamento de sinal 422 da Figura 4, o módulo de processamento de sinal 622 da Figura 6, o módulo de processamento de sinal 722 da Figura 7, ou uma combinação dos mesmos.
[0237] O método 1600 pode incluir gerar, em um dispositivo, critérios de busca com base em um sinal de entrada de fala, em 1602. Por exemplo, o analisador 402 pode gerar os critérios de busca 418 com base no primeiro sinal de fala de usuário 130, conforme descrito com referência à Figura 4. Como outro exemplo, o analisador 602 pode gerar os critérios de busca 612 com base nos primeiros dados 630, conforme descrito com referência à Figura 6.
[0238] O método 1600 também pode incluir gerar os resultados de busca através da busca em um banco de dados com base nos critérios de busca, em 1604. O banco de dados pode armazenar um conjunto de parâmetros de fala associados a uma pluralidade de sinal de fala substituto. Por exemplo, a ferramenta de busca 404 pode gerar os resultados de busca 414 através da busca no banco de dados parametrizado 424 com base nos critérios de busca 418, conforme descrito com referência à Figura 4. Como outro exemplo, a ferramenta de busca 604 pode gerar o conjunto de pluralidade de parâmetros de fala 614 com base nos critérios de busca 612, conforme descrito com referência à Figura 6. Como um exemplo adicional, a ferramenta de busca 704 pode gerar a pluralidade de sinais de fala substitutos 714 com base nos critérios de busca 612. O banco de dados parametrizado 424 pode incluir os parâmetros de fala 472, 474 e 476.
[0239] O método 1600 pode incluir adicionalmente selecionar um resultado de busca particular dos resultados de busca com base em uma restrição, em 1606. O resultado de busca particular pode estar associado a um primeiro sinal de fala substituto dentre uma pluralidade de sinais de fala substitutos. Por exemplo, o analisador de restrição 406 pode selecionar o resultado selecionado 416 dos resultados de busca 414 com base em uma restrição, conforme descrito com referência à Figura 4. O resultado selecionado 416 pode incluir o primeiro sinal de fala substituto 172, os primeiros parâmetros de fala 472 ou ambos. Como outro exemplo, o analisador de restrição 606 pode selecionar a primeira pluralidade de parâmetros de fala 472 do conjunto de pluralidade de parâmetros de fala 614, conforme descrito com referência à Figura 6. Como um exemplo adicional, o analisador de restrição 706 pode selecionar o primeiro sinal de fala substituto 172 dentre a pluralidade de sinais de fala substitutos 714, conforme descrito com referência à Figura 7.
[0240] O método 1600 também pode incluir gerar um sinal de fala processado substituindo-se uma porção do sinal de fala de usuário por um sinal de fala de substituição, em 1608. O sinal de fala de substituição pode ser determinado com base no resultado de busca particular. Por exemplo, o sintetizador 408 pode gerar o primeiro sinal de fala processado 116 substituindo-se uma porção do primeiro sinal de fala de usuário 130 por um sinal de fala de substituição, conforme descrito com referência à Figura 4. Como outro exemplo, o sintetizador 608 pode gerar o primeiro sinal de fala processado 116 substituindo-se uma porção de um sinal de entrada dos primeiros dados 630 por um sinal de fala de substituição, conforme descrito com referência à Figura 6. Como um exemplo adicional, o sintetizador 708 pode gerar o primeiro sinal de fala processado 116 substituindo-se uma porção de um sinal de entrada dos primeiros dados 630 por um sinal de fala de substituição, conforme descrito com referência à Figura 7.
[0241] Portanto, o método 1600 pode habilitar a geração de um sinal de fala processado substituindo-se uma porção de um sinal de entrada de fala por um sinal de fala substituto. O sinal de fala processado pode ter uma qualidade de áudio superior em relação ao sinal de fala de entrada.
[0242] O método 1600 da Figura 16 pode ser implantado por um arranjo de portas programável em campo (FPGA) dispositivo, um circuito integrado específico para aplicativo (ASIC), uma unidade de processamento como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), um controlador, outro dispositivo de hardware, dispositivo de firmware ou qualquer combinação dos mesmos. Como um exemplo, o método 1600 da Figura 16 pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura 19.
[0243] Referindo-se à Figura 17, um fluxograma de um aspecto ilustrativo particular de um método para a geração de uma interface de usuário é mostrado e é designado genericamente como 1700. O método 1700 pode ser executado pelo módulo de processamento de sinal 122 da Figura 1, o módulo de processamento de sinal 422 da Figura 4, o módulo de processamento de sinal 622 da Figura 6, o módulo de processamento de sinal 722 da Figura 7, ou uma combinação dos mesmos.
[0244] O método 1700 pode incluir gerar uma interface de usuário em um dispositivo, em 1702. A interface de usuário pode indicar uma duração de tempo associada a um ou mais sinais de fala de um usuário. A interface de usuário pode incluir uma opção de adicionar. Por exemplo, o módulo de processamento de sinal 122 da Figura 1 pode gerar a interface de usuário 300, conforme descrito com referência à Figura 3. A primeira barra 302 da interface de usuário 300 pode indicar uma duração de tempo associada a um ou mais sinais de fala de um usuário (por exemplo, "Randal Hughes"), conforme descrito com referência à Figura 3. A interface de usuário 300 pode incluir a opção de adicionar 308, conforme descrito com referência à Figura 3.
[0245] O método 1700 também pode incluir fornecer a interface de usuário a um visor, em 1704. Por exemplo, o módulo de processamento de sinal 122 da Figura 1 pode fornecer a interface de usuário 300 a um visor do primeiro dispositivo 102, conforme descrito com referência à Figura 3. O método 1700 pode incluir adicionalmente gerar uma pluralidade de sinais de fala substitutos correspondente para os um ou mais sinais de fala em resposta ao recebimento de uma seleção da opção de adicionar, em 1706. Por exemplo, o módulo de processamento de sinal 122 pode gerar uma pluralidade de sinais de fala substitutos 112 correspondentes aos um ou mais sinais de fala em resposta ao recebimento de uma seleção da opção de adicionar 308 da Figura 3. Para fins de ilustração, o módulo de processamento de sinal 122 pode enviar uma solicitação a um gerenciador de sinal de fala 262 em resposta ao recebimento da seleção da opção de adicionar 308 e pode receber a pluralidade de sinais de fala substitutos 112 a partir do gerenciador de sinal de fala 262, conforme descrito com referência à Figura 3.
[0246] Portanto, o método 1700 pode habilitar o gerenciamento de sinais de fala substitutos. O método 1700 pode habilitar o monitoramento de sinais de fala associados com usuários. O método 1700 pode habilitar a geração de sinais de fala substitutos associados a um usuário selecionado.
[0247] O método 1700 da Figura 17 pode ser implantado por um arranjo de portas programável em campo (FPGA) dispositivo, um circuito integrado específico para aplicativo (ASIC), uma unidade de processamento como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), um controlador, outro dispositivo de hardware, dispositivo de firmware ou qualquer combinação dos mesmos. Como um exemplo, o método 1700 da Figura 17 pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura 19.
[0248] Referindo-se à Figura 18, um fluxograma de um aspecto ilustrativo particular de um método para a substituição de um sinal de fala é mostrado e é designado genericamente como 1800. O método 1800 pode ser executado pelo módulo de processamento de sinal 122 da Figura 1, o módulo de processamento de sinal 422 da Figura 4, o módulo de processamento de sinal 622 da Figura 6, o módulo de processamento de sinal 722 da Figura 7, ou uma combinação dos mesmos.
[0249] O método 1800 pode incluir receber um perfil de voz remoto em um dispositivo que armazena um perfil de voz local, em que o perfil de voz local está associado a uma pessoa, em 1802. Por exemplo, o módulo de processamento de sinal 122 do primeiro dispositivo 102 pode receber o perfil de voz remoto 1174 associado ao segundo usuário 154, conforme descrito com referência à Figura 11. O primeiro dispositivo 102 pode armazenar o perfil de voz local 1104 associado ao segundo usuário 154.
[0250] O método 1800 também pode incluir determinar que o perfil de voz remoto está associado à pessoa com base em uma comparação do perfil de voz remoto e do perfil de voz local, ou com base em um identificador associado ao perfil de voz remoto, em 1804. Por exemplo, o módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado ao segundo usuário 154 com base em uma comparação de conteúdo de fala associado ao perfil de voz remoto 1174 e conteúdo de fala associado ao perfil de voz local 1104, conforme descrito com referência à Figura 11. Como outro exemplo, o módulo de processamento de sinal 122 pode determinar que o perfil de voz remoto 1174 está associado ao segundo usuário 154 em resposta à determinação de que o perfil de voz remoto 1174 inclui o identificador 1168 associado ao segundo usuário 154, conforme descrito com referência à Figura 11.
[0251] O método 1800 pode incluir adicionalmente selecionar, no dispositivo, o perfil de voz local para o gerenciamento de perfil com base na determinação, em 1806. Por exemplo, o módulo de processamento de sinal 122 do primeiro dispositivo 102 pode selecionar o perfil de voz local 1104 com base na determinação de que o perfil de voz remoto 1174 corresponde ao segundo usuário 154, conforme descrito com referência à Figura 11. Os exemplos de gerenciamento de perfil podem incluir, sem limitação, atualizar o perfil de voz local 1104 com base no perfil de voz remoto 1174 e fornecer as informações de perfil de voz a um usuário gerando-se uma GUI que inclui uma representação do perfil de voz remoto 1174, uma representação do perfil de voz local 1104 ou ambos.
[0252] O método 1800 pode, portanto, habilitar um perfil de voz local de uma pessoa a ser selecionada para o gerenciamento de perfil em resposta ao recebimento de um perfil de voz remoto da pessoa a partir de outro dispositivo. Por exemplo, o perfil de voz local pode ser comparado ao perfil de voz remoto. Como outro exemplo, o perfil de voz local pode ser atualizado com base no perfil de voz remoto.
[0253] O método 1800 da Figura 18 pode ser implantado por um arranjo de portas programável em campo (FPGA) dispositivo, um circuito integrado específico para aplicativo (ASIC), uma unidade de processamento como uma unidade de processamento central (CPU), um processador de sinal digital (DSP), um controlador, outro dispositivo de hardware, dispositivo de firmware ou qualquer combinação dos mesmos. Como um exemplo, o método 1800 da Figura 18 pode ser realizado por um processador que executa instruções, conforme descrito em relação à Figura 18.
[0254] Referindo-se à Figura 19, um diagrama de blocos de um aspecto ilustrativo particular de um dispositivo (por exemplo, um dispositivo de comunicação sem fio) é retratado e designado genericamente como 1900. Em vários aspectos, o dispositivo 1900 pode ter mais ou menos componentes do que ilustrado na Figura 19. Em um aspecto ilustrativo, o dispositivo 1900 pode corresponder ao primeiro dispositivo 102, ao dispositivo móvel 104, ao computador desktop 106 da Figura 1 ou ao servidor 206 da Figura 2. Em um aspecto ilustrativo, o dispositivo 1900 pode realizar uma ou mais operações descritas no presente documento com referência às Figuras 1 a 18.
[0255] Em um aspecto particular, o dispositivo 1900 inclui um processador 1906 (por exemplo, uma unidade de processamento central (CPU). O processador 1906 pode corresponder ao processador 1152, ao processador 1160 da Figura 11 ou a ambos. O dispositivo 1900 pode incluir um ou mais processadores adicionais 1910 (por exemplo, um ou mais processadores de sinal digital (DSPs)). Os processadores 1910 podem incluir um codificador-decodificador de música e fala (CODEC) 1908 e um cancelador de eco 1912. O codec de fala e música 1908 pode incluir um criptador de vocoder 1936, um decodificador de vocoder 1938 ou ambos.
[0256] O dispositivo 1900 pode incluir a memória 1932 e um CODEC 1934. A memória 1932 pode corresponder à memória 1132, à memória 1176 da Figura 11 ou a ambas. O dispositivo 1900 pode incluir um controlador sem fio 1940 acoplado, por meio de um módulo de radiofrequência (RF) 1950, a uma antena 1942. O dispositivo 1900 pode incluir o visor 1128 acoplado a um controlador de exibição 1926. Os alto-falantes 142 da Figura 1, um ou mais microfones 1946, ou uma combinação dos mesmos, podem estar acoplados ao CODEC 1934. O CODEC 1934 pode incluir um conversor de digital em analógico 1902 e um conversor de analógico em digital 1904. Em um aspecto ilustrativo, os microfones 1946 podem corresponder ao microfone 144, ao microfone 146 da Figura 1, ao microfone 246 da Figura 2, aos microfones 1244 da Figura 12 ou a uma combinação dos mesmos. Em um aspecto particular, o CODEC 1934 pode receber sinais analógicos a partir dos microfones 1946, converter os sinais analógicos em sinais digitais com o uso do conversor de analógico em digital 1904, e fornecer os sinais digitais ao codec de fala e música 1908. O codec de fala e música 1908 pode processar os sinais digitais. Em um aspecto particular, o codec de fala e música 1908 pode fornecer sinais digitais ao CODEC 1934. O CODEC 1934 pode converter os sinais digitais em sinais analógicos com o uso do conversor de digital em analógico 1902 e pode fornecer os sinais analógicos aos alto-falantes 142.
[0257] A memória 1932 pode incluir o primeiro banco de dados 124 da Figura 1, o segundo banco de dados 264 da Figura 2, o banco de dados parametrizado 424 da Figura 4, os perfis de voz local 1108, os perfis de voz remotos 1178, o sinal de áudio de entrada 1130 da Figura 11, a classificação 1346, a definição de modo de uso 1362 da Figura 13 ou uma combinação dos mesmos. O dispositivo 1900 pode incluir um módulo de processamento de sinal 1948, o gerenciador de sinal de fala 262 da Figura 2, o analisador de banco de dados 410 da Figura 4, o aplicativo 822 da Figura 8, o módulo de busca 922 da Figura 9, o detector de modo 1302, o selecionador de modo 1304, o conversor de texto em fala 1322 da Figura 13 ou uma combinação dos mesmos. O módulo de processamento de sinal 1948 pode corresponder ao módulo de processamento de sinal 122 da Figura 1, ao módulo de processamento de sinal 422 da Figura 4, ao módulo de processamento de sinal 622 da Figura 6, ao módulo de processamento de sinal 722 da Figura 7 ou uma combinação dos mesmos. Em um aspecto particular, um ou mais componentes do gerenciador de sinal de fala 262, o analisador de banco de dados 410, o aplicativo 822 da Figura 8, o módulo de busca 922 da Figura 9, o detector de modo 1302, o selecionador de modo 1304, o conversor de texto em fala 1322 da Figura 13, e/ou o módulo de processamento de sinal 1948 podem estar incluídos no processador 1906, nos processadores 1910, no CODEC 1934 ou em uma combinação dos mesmos. Em um aspecto particular, um ou mais componentes do gerenciador de sinal de fala 262, o analisador de banco de dados 410, o aplicativo 822 da Figura 8, o módulo de busca 922 da Figura 9, o detector de modo 1302, o selecionador de modo 1304, o conversor de texto em fala 1322 da Figura 13, e/ou o módulo de processamento de sinal 1948 podem estar incluídos no criptador de vocoder 1936, no decodificador de vocoder 1938 ou em ambos.
[0258] O módulo de processamento de sinal 1948, o gerenciador de sinal de fala 262, o analisador de banco de dados 410, o aplicativo 822, o módulo de busca 922, o detector de modo 1302, o selecionador de modo 1304, o conversor de texto em fala 1322, ou uma combinação dos mesmos, podem ser usados para implantar um aspecto de hardware da técnica de substituição de sinal de fala descrita no presente documento. Alternativa ou adicionalmente, um aspecto de software (ou aspecto de software/hardware combinados) pode ser implantado. Por exemplo, a memória 1932 pode incluir instruções 1956 executáveis pelos processadores 1910 ou outra unidade de processamento do dispositivo 1900 (por exemplo, pelo processador 1906, pelo CODEC 1934 ou por ambos). As instruções 1956 podem corresponder ao gerenciador de sinal de fala 262, ao analisador de banco de dados 410, ao aplicativo 822, ao módulo de busca 922, ao detector de modo 1302, ao selecionador de modo 1304, ao conversor de texto em fala 1322, ao módulo de processamento de sinal 1948 ou a uma combinação dos mesmos.
[0259] Em um aspecto particular, o dispositivo 1900 pode estar incluído em um dispositivo de sistema em pacote ou sistema em chip 1922. Em um aspecto particular, o processador 1906, os processadores 1910, o controlador de exibição 1926, a memória 1932, o CODEC 1934 e o controlador sem fio 1940 são incluídos em um dispositivo de sistema em pacote ou sistema em chip 1922. Em um aspecto particular, o dispositivo de entrada 1134 e uma fonte de alimentação 1944 estão acoplados ao dispositivo de sistema em chip 1922. Além disso, em um aspecto particular, conforme ilustrado na Figura 19, o visor 1128, o dispositivo de entrada 1134, os alto-falantes 142, os microfones 1946, a antena 1942 e a fonte de alimentação 1944 são externas ao dispositivo de sistema em chip 1922. Em um aspecto particular, cada um dentre o visor 1128, o dispositivo de entrada 1134, os alto-falantes 142, os microfones 1946, a antena 1942 e a fonte de alimentação 1944 podem estar acoplados a um componente do dispositivo de sistema em chip 1922, como uma interface ou um controlador.
[0260] O dispositivo 1900 pode incluir 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 digital pessoal, 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 de vídeo digital (DVD), um sintonizador, uma câmera, um dispositivo de navegação ou qualquer combinação dos mesmos.
[0261] Em um aspecto ilustrativo, os processadores 1910 podem ser operáveis para realizar todos ou uma porção das operações ou métodos descritos com referência às Figuras 1 a 18. Por exemplo, os microfones 1946 podem capturar um sinal de áudio correspondente a um sinal de fala de usuário. O ADC 1904 pode converter o sinal de áudio capturado a partir de uma forma de onda analógica em uma forma de onda digital compreendida de amostras de áudio digital. Os processadores 1910 podem processar as amostras de áudio digital. Um ajustador de ganho pode ajustar as amostras de áudio digital. O cancelador de eco 1912 pode reduzir qualquer eco que possa ter sido criado pela entrada de uma saída dos alto-falantes 142 nos microfones 1946.
[0262] Os processadores 1910 podem comparar uma porção do sinal de fala de usuário a uma pluralidade de sinais de fala substitutos. Por exemplo, os processadores 1910 podem comparar uma porção das amostras de áudio digital à pluralidade de sinais de fala. Os processadores 1910 podem determinar que um primeiro sinal de fala substituto dentre uma pluralidade de sinais de fala substitutos é correspondente à porção do sinal de fala de usuário. Os processadores 1910 podem gerar um sinal de fala processado substituindo-se a porção do sinal de fala de usuário pelo primeiro sinal de fala substituto.
[0263] O criptador de vocoder 1936 pode compactar amostras de áudio digital correspondente ao sinal de fala processado e pode formar um pacote de transmissão (por exemplo, uma representação dos bits compactados das amostras de áudio digital). O pacote de transmissão pode ser armazenado na memória 1932. O módulo de RF 1950 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 1942. Como outro exemplo, o processador 1910 pode receber um sinal de teste por meio dos microfones 1946 e pode gerar uma pluralidade de sinais de fala substitutos a partir do sinal de teste.
[0264] Como um exemplo adicional, a antena 1942 pode receber pacotes entrantes 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 um sinal de fala de usuário. O decodificador de vocoder 1938 pode descompactar o pacote de recebimento. A forma de onda descompactada pode ser denominada como amostras de áudio reconstruídas. O cancelador de eco 1912 pode remover eco das amostras de áudio reconstruídas.
[0265] Os processadores 1910 podem comparar uma porção do sinal de fala de usuário a uma pluralidade de sinais de fala substitutos. Por exemplo, os processadores 1910 podem comparar uma porção das amostras de áudio reconstruídas à pluralidade de sinais de fala. Os processadores 1910 podem determinar que um primeiro sinal de fala substituto dentre uma pluralidade de sinais de fala substitutos é correspondente à porção do sinal de fala de usuário. Os processadores 1910 podem gerar um sinal de fala processado substituindo-se a porção do sinal de fala de usuário pelo primeiro sinal de fala substituto. Um ajustador de ganho pode amplificar ou suprimir o sinal de fala processado. O DAC 1902 pode converter o sinal de fala processado a partir de uma forma de onda digital em uma forma de onda analógica e pode fornecer o sinal convertido nos alto-falantes 142.
[0266] Em combinação com os aspectos descritos, um aparelho pode incluir meios para receber um perfil de voz remoto. Por exemplo, os meios para receber o perfil de voz remoto podem incluir o módulo de processamento de sinal 1948, o processador 1906, os processadores 1910, o módulo de RF 1950, um ou mais outros dispositivos ou circuitos configurados para receber o perfil de voz remoto, ou qualquer combinação dos mesmos.
[0267] O aparelho também pode incluir meios para armazenar um perfil de voz local associado a uma pessoa. Por exemplo, os meios para armazenar podem incluir a memória 1932, o módulo de processamento de sinal 1948, o processador 1906, os processadores 1910, um ou mais outros dispositivos ou circuitos configurados para armazenar um perfil de voz local ou qualquer combinação dos mesmos.
[0268] O aparelho pode incluir adicionalmente meios para selecionar o perfil de voz local para o gerenciamento de perfil com base na determinação de que o perfil de voz remoto está associado à pessoa com base no conteúdo de fala associado ao perfil de voz remoto ou um identificador do perfil de voz remoto. Por exemplo, os meios para selecionar o perfil de voz local podem incluir o módulo de processamento de sinal 1948, o processador 1906, os processadores 1910, um ou mais outros dispositivos ou circuitos configurados para selecionar o perfil de voz local, ou qualquer combinação dos mesmos.
[0269] Os meios para armazenar e os meios para selecionar podem ser integrados em pelo menos um dentre um veículo, um dispositivo leitor eletrônico, um dispositivo de captura acústico, um dispositivo de comunicação móvel, um telefone inteligente, um telefone celular, um computador do tipo laptop, um computador, um criptador, um decodificador, um computador do tipo tablet, um assistente digital pessoal, 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 de vídeo digital, um sintonizador, uma câmera ou um dispositivo de navegação.
[0270] As pessoas versadas na técnica observarão ainda 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 processador ou combinações de ambos. Vários componentes, blocos, configurações, módulos, etapas e circuitos ilustrativos foram descritos acima de modo geral no que diz respeito à sua funcionalidade. Se tal funcionalidade deve ser implantada como hardware ou instruções executáveis por processador, depende das restrições de projeto e pedido particular impostas no sistema geral. As pessoas versadas na técnica podem implantar a funcionalidade descrita em modos variáveis para cada aplicação em particular, tais decisões de implantação não devem ser interpretadas como causadoras de um afastamento do escopo da presente revelação.
[0271] Deve ser notado que embora um ou mais dos exemplos anteriores descreva perfis de voz remotos e perfis de voz local que estão associados a pessoas específicas, tais exemplos são somente para propósitos ilustrativos, e não devem ser considerados limitadores. Em aspectos particulares, um dispositivo pode armazenar um perfil de voz "universal" (ou padrão). Por exemplo, o perfil de voz universal pode ser usado quando uma infraestrutura de comunicação ou ambiente não suporta a troca de perfis de voz associadas às pessoas individuais. Portanto, um perfil de voz universal pode ser selecionado em um dispositivo em determinadas situações, que incluem, sem limitação, quando um perfil de voz associado a um chamador específico ou destinatário da chamada estiver indisponível, quando a substituição (por exemplo, qualidade superior) de dados de fala de estiver indisponível para um modo de uso ou domínio demográfico particular, etc. Em algumas implantações, o perfil de voz universal pode ser usado para complementar um perfil de voz associado a uma pessoa particular. Para fins de ilustração, quando um perfil de voz associado a uma pessoa particular não incluir a substituição de dados de fala para um som particular, o modo de uso, domínio demográfico, ou combinação dos mesmos, a substituição de dados de fala pode, ao invés disso, ser entregue com base no perfil de voz universal. Em aspectos particulares, um dispositivo pode armazenar múltiplos perfis de voz padrão ou universais (por exemplo, perfis de voz padrão e universais separados para conversação versus canto, Inglês versus Francês, etc.).
[0272] As etapas de um método ou algoritmo descrito em conexão com os aspectos revelados no presente documento podem ser incorporadas diretamente no 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 uma memória de acesso aleatório (RAM), memória flash, memória de somente leitura (ROM), memória de somente leitura programável (PROM), memória de somente leitura programável e apagável (EPROM), memória de somente leitura eletricamente programável e apagável (EEPROM), registros, disco rígido, um disco removível, uma memória de somente leitura de disco compacto (CD-ROM), ou qualquer outra forma de meio de armazenamento não transiente conhecido na técnica. Um meio de armazenamento exemplificativo é acoplado ao processador de modo que o processador possa ler e gravar informações no meio de armazenamento Alternativamente, o meio de armazenamento pode ser integral ao processador. O processador e o meio de armazenamento podem residir em um circuito integrado específico para aplicativo (ASIC). O ASIC pode residir em um dispositivo de computação ou um terminal de usuário. Alternativamente, o processador e o meio de armazenamento podem residir como componentes distintos em um dispositivo de computação ou terminal de usuário.
[0273] A descrição anterior dos aspectos revelados é fornecida para possibilitar que uma pessoa versada na técnica produza ou use os aspectos revelados. Várias modificações a esses aspectos serão prontamente evidentes para as pessoas versadas 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. Portanto, a presente revelação não se destina a ser limitada aos aspectos mostrados no presente documento e deve ser compatível com o escopo mais amplo possível consistente com os princípios e recursos inovadores conforme definido pelas reivindicações a seguir.

Claims (15)

1. Dispositivo (102), compreendendo: um receptor configurado para receber um perfil de voz remoto (1174, 1178, 1274); uma memória eletricamente acoplada ao receptor, a memória configurada para armazenar um perfil de voz local (1104, 1108, 1204) associado com uma pessoa; e um processador (1160, 1152, 1906, 1910) eletricamente acoplado à memória e ao receptor, em que o processador (1160, 1152, 1906, 1910) é configurado para: determinar que o perfil de voz remoto (1174, 1178, 1274) está associado à pessoa com base no conteúdo de fala (1170) associado ao perfil de voz remoto (1174, 1178, 1274) ou um identificador associado ao perfil de voz remoto (1174, 1178, 1274); e selecionar o perfil de voz local (1104, 1108, 1204) para o gerenciamento de perfil com base na determinação de que o perfil de voz remoto (1174, 1178, 1274) está associado à pessoa; o dispositivo sendo caracterizado pelo fato de que o processador (1160, 1152, 1906, 1910) é adicionalmente configurado para: substituir um primeiro segmento (1164) do perfil de voz local (1104, 1108, 1204) por um segundo segmento (1166) do perfil de voz remoto (1174, 1178, 1274), em que o perfil de voz local (1104, 1108, 1204) está associado a uma primeira pluralidade de sinais de fala substitutos (112, 714) e o perfil de voz remoto (1174, 1178, 1274) está associado a uma segunda pluralidade de sinais de fala substitutos (112, 714).
2. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o primeiro segmento (1164) do perfil de voz local (1104, 1108, 1204) é substituído pelo segundo segmento (1166) do perfil de voz remoto (1174, 1178, 1274) removendo-se um primeiro sinal de fala substituto (172) da primeira pluralidade de sinais de fala substitutos (112, 714) e adicionando-se um segundo sinal de fala substituto (174) da segunda pluralidade de sinais de fala substitutos (112, 714) à primeira pluralidade de sinais de fala substitutos (112, 714).
3. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o receptor inclui uma ou mais dentre uma antena, uma interface de rede, ou uma combinação da antena e da interface de rede.
4. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o receptor é configurado para receber múltiplos perfis de voz remotos (1178) associados a múltiplas pessoas.
5. Dispositivo, de acordo com a reivindicação 1, caracterizado pelo fato de que o processador (1160, 1152, 1906, 1910) é configurado adicionalmente para: receber um sinal de fala a partir de um conversor de texto em fala (1322); detectar um modo de uso (1312) dentre uma pluralidade de modos de uso, em que o modo de uso (1312) compreende pelo menos um modo de leitura, um modo de conversação, um modo de canto ou um modo de comando e controle; selecionar um domínio demográfico (1314) dentre uma pluralidade de domínios demográficos, em que o domínio demográfico compreende pelo menos um dentre um domínio de linguagem, um domínio de gênero ou um domínio de idade; selecionar um sinal de fala substituto dentre uma pluralidade de sinais de fala substitutos (112, 714) com base no sinal de fala, no modo de uso (1312) e no domínio demográfico (1314), em que o perfil de voz local (1104, 1108, 1204) está associado à pluralidade de sinais de fala substitutos (112, 714); e gerar um sinal de fala processado com base no sinal de fala substituto.
6. Dispositivo, de acordo com a reivindicação 5, caracterizado pelo fato de que a pluralidade de sinais de fala substitutos (112, 714) está associada a classificações, em que cada uma das classificações tem uma prioridade, e em que o sinal de fala substituto é selecionado comparando-se uma porção do sinal de fala (1330) à pluralidade de sinais de fala substitutos (112, 714) em ordem de prioridade.
7. Dispositivo, de acordo com a reivindicação 5, caracterizado pelo fato de que compreende adicionalmente um microfone configurado para receber um sinal de treinamento de fala (272, 1338) associado à pessoa, em que um ou mais sinais de fala dentre a pluralidade de sinais de fala substitutos (112, 714) são gerados com base no sinal de treinamento de fala (272, 1338).
8. Dispositivo, de acordo com a reivindicação 5, caracterizado pelo fato de que o processador (1160, 1152, 1906, 1910) é configurado adicionalmente para: detectar um primeiro modo de uso (1312) dentre a pluralidade de modos de uso associados a um sinal de treinamento de fala (272, 1338); e associar o primeiro modo de uso (1312) a um ou mais sinais de fala substitutos dentre a pluralidade de sinais de fala substitutos (112, 714) que são gerados com base no sinal de treinamento de fala (272, 1338).
9. Dispositivo, de acordo com a reivindicação 5, caracterizado pelo fato de que o processador (1160, 1152, 1906, 1910) é configurado adicionalmente para: detectar um primeiro modo de uso (1312) dentre a pluralidade de modos de uso com base em uma definição de modo de uso (1312) quando um sinal de treinamento de fala (272, 1338) for recebido; e associar o primeiro modo de uso (1312) a um ou mais sinais de fala dentre a pluralidade de sinais de fala substitutos (112, 714) que são gerados com base no sinal de treinamento de fala (272, 1338).
10. Dispositivo, de acordo com a reivindicação 5, caracterizado pelo fato de que o processador (1160, 1152, 1906, 1910) é configurado adicionalmente para: associar um modo de canto a um ou mais sinais de fala dentre a pluralidade de sinais de fala substitutos (112, 714) com base na determinação de que um sinal de treinamento de fala (272, 1338) corresponde ao canto, em que os um ou mais sinais de fala são gerados com base no sinal de treinamento de fala (272, 1338); associar um modo de leitura aos um ou mais sinais de fala com base na determinação de que um aplicativo de leitura estava no modo ativado quando o sinal de treinamento de fala (272, 1338) foi recebido; e associar um modo de conversação aos um ou mais sinais de fala com base na determinação de que o sinal de treinamento de fala (272, 1338) foi capturado durante uma chamada de voz.
11. Método para comunicação, compreendendo: receber um perfil de voz remoto (1174, 1178, 1274) em um dispositivo que armazena um perfil de voz local (1104, 1108, 1204), em que o perfil de voz local (1104, 1108, 1204) está associado a uma pessoa; determinar que o perfil de voz remoto (1174, 1178, 1274) está associado à pessoa com base em uma comparação do perfil de voz remoto (1174, 1178, 1274) e do perfil de voz local (1104, 1108, 1204), ou com base em um identificador associado ao perfil de voz remoto (1174, 1178, 1274); e selecionar, no dispositivo, o perfil de voz local (1104, 1108, 1204) para o gerenciamento de perfil com base na determinação de que o perfil de voz remoto (1174, 1178, 1274) está associado à pessoa; o método sendo caracterizado pelo fato de que compreende: substituir um primeiro segmento (1164) do perfil de voz local (1104, 1108, 1204) por um segundo segmento (1166) do perfil de voz remoto (1174, 1178, 1274), em que o perfil de voz local (1104, 1108, 1204) está associado a uma primeira pluralidade de sinais de fala substitutos (112, 714), e em que o perfil de voz remoto (1174, 1178, 1274) está associado a uma segunda pluralidade de sinais de fala substitutos (112, 714).
12. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que compreende adicionalmente: receber, no dispositivo, uma atualização (1102, 1202) que inclui dados correspondentes a uma pluralidade de sinais de fala substitutos (112, 714) associados ao perfil de voz remoto (1174, 1178, 1274); associar a pluralidade de sinais de fala substitutos (112, 714) ao perfil de voz local (1104, 1108, 1204); receber, no dispositivo, uma seleção associada ao perfil de voz local (1104, 1108, 1204); receber, no dispositivo, um sinal de áudio de entrada (1130, 1238), e gerar, no dispositivo, um sinal de fala processado substituindo-se uma porção do sinal de áudio de entrada (1130, 1238) por um sinal de fala substituto dentre a pluralidade de sinais de fala substitutos (112, 714).
13. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que um primeiro valor de razão de sinal para ruído associada com o sinal de fala substituto é maior do que um segundo valor de razão de sinal para ruído associada com a porção do sinal de áudio de entrada (1130, 1238).
14. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que compreende adicionalmente emitir o sinal de fala processado por meio de um alto- falante (142).
15. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que a seleção corresponde à: inicialização de uma chamada de voz a partir do dispositivo para um segundo dispositivo associado ao perfil de voz local (1104, 1108, 1204); ou aceitação, através do dispositivo, de uma chamada de voz a partir de um segundo dispositivo, e em que o segundo dispositivo está associado ao perfil de voz local (1104, 1108, 1204).
BR112016025110-5A 2014-04-30 2015-04-30 Gerenciamento de perfil de voz e geração de sinal de fala BR112016025110B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461986701P 2014-04-30 2014-04-30
US61/986,701 2014-04-30
US14/700,009 2015-04-29
US14/700,009 US9666204B2 (en) 2014-04-30 2015-04-29 Voice profile management and speech signal generation
PCT/US2015/028584 WO2015168444A1 (en) 2014-04-30 2015-04-30 Voice profile management and speech signal generation

Publications (2)

Publication Number Publication Date
BR112016025110A2 BR112016025110A2 (pt) 2017-08-15
BR112016025110B1 true BR112016025110B1 (pt) 2022-10-11

Family

ID=54355675

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112016025110-5A BR112016025110B1 (pt) 2014-04-30 2015-04-30 Gerenciamento de perfil de voz e geração de sinal de fala

Country Status (7)

Country Link
US (2) US9666204B2 (pt)
EP (2) EP3138097B1 (pt)
JP (2) JP6374028B2 (pt)
KR (3) KR101827670B1 (pt)
CN (1) CN106463142B (pt)
BR (1) BR112016025110B1 (pt)
WO (1) WO2015168444A1 (pt)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9666204B2 (en) * 2014-04-30 2017-05-30 Qualcomm Incorporated Voice profile management and speech signal generation
JP6721298B2 (ja) 2014-07-16 2020-07-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 音声情報制御方法及び端末装置
WO2016133319A1 (en) * 2015-02-16 2016-08-25 Samsung Electronics Co., Ltd. Method and device for providing information
US10334518B2 (en) * 2015-10-20 2019-06-25 Qualcomm Incorporated Power gains and capacity gains for a relaxed frame erasure rate
US9818427B2 (en) * 2015-12-22 2017-11-14 Intel Corporation Automatic self-utterance removal from multimedia files
JP6639285B2 (ja) * 2016-03-15 2020-02-05 株式会社東芝 声質嗜好学習装置、声質嗜好学習方法及びプログラム
US10127908B1 (en) 2016-11-11 2018-11-13 Amazon Technologies, Inc. Connected accessory for a voice-controlled device
US10204098B2 (en) * 2017-02-13 2019-02-12 Antonio GONZALO VACA Method and system to communicate between devices through natural language using instant messaging applications and interoperable public identifiers
US10789948B1 (en) 2017-03-29 2020-09-29 Amazon Technologies, Inc. Accessory for a voice controlled device for output of supplementary content
EP3577860B1 (en) * 2017-04-07 2023-07-26 Microsoft Technology Licensing, LLC Voice forwarding in automated chatting
US10366692B1 (en) * 2017-05-15 2019-07-30 Amazon Technologies, Inc. Accessory for a voice-controlled device
KR102394912B1 (ko) * 2017-06-09 2022-05-06 현대자동차주식회사 음성 인식을 이용한 주소록 관리 장치, 차량, 주소록 관리 시스템 및 음성 인식을 이용한 주소록 관리 방법
US10909978B2 (en) * 2017-06-28 2021-02-02 Amazon Technologies, Inc. Secure utterance storage
US10140089B1 (en) * 2017-08-09 2018-11-27 2236008 Ontario Inc. Synthetic speech for in vehicle communication
US10438594B2 (en) * 2017-09-08 2019-10-08 Amazon Technologies, Inc. Administration of privileges by speech for voice assistant system
US10403288B2 (en) * 2017-10-17 2019-09-03 Google Llc Speaker diarization
US10715604B1 (en) 2017-10-26 2020-07-14 Amazon Technologies, Inc. Remote system processing based on a previously identified user
US10567515B1 (en) * 2017-10-26 2020-02-18 Amazon Technologies, Inc. Speech processing performed with respect to first and second user profiles in a dialog session
KR102018110B1 (ko) 2017-11-20 2019-09-04 주식회사 이명수디자인랩 음성파일 생성방법 및 장치
CN110797004B (zh) * 2018-08-01 2021-01-26 百度在线网络技术(北京)有限公司 数据传输方法和装置
WO2020090995A1 (ja) 2018-10-31 2020-05-07 富士フイルム株式会社 平版印刷版原版、平版印刷版の作製方法、及び、平版印刷方法
US10763885B2 (en) * 2018-11-06 2020-09-01 Stmicroelectronics S.R.L. Method of error concealment, and associated device
US11222621B2 (en) * 2019-05-23 2022-01-11 Google Llc Variational embedding capacity in expressive end-to-end speech synthesis
KR102436985B1 (ko) 2019-05-31 2022-08-29 애플 인크. 오디오 미디어 제어를 위한 사용자 인터페이스
US11533313B2 (en) * 2019-05-31 2022-12-20 Apple Inc. Multi-user devices in a connected home environment
US11010121B2 (en) 2019-05-31 2021-05-18 Apple Inc. User interfaces for audio media control
US10867608B1 (en) * 2019-05-31 2020-12-15 Apple Inc. Multi-user configuration
US11138981B2 (en) * 2019-08-21 2021-10-05 i2x GmbH System and methods for monitoring vocal parameters
US11184477B2 (en) 2019-09-06 2021-11-23 International Business Machines Corporation Gapless audio communication via discourse gap recovery model
DE102019135799A1 (de) * 2019-12-27 2021-07-01 Sennheiser Electronic Gmbh & Co. Kg Verfahren zum Verbessern von Sprachverständlichkeit einer elektronischen Sprechverbindung und Headset zur Durchführung des Verfahrens
KR102164306B1 (ko) 2019-12-31 2020-10-12 브레인소프트주식회사 디제이변환에 기초한 기본주파수 추출 방법
US10965806B1 (en) * 2020-01-31 2021-03-30 Noble Systems Corporation Auto-correcting voice quality in real-time
KR102530669B1 (ko) * 2020-10-07 2023-05-09 네이버 주식회사 앱과 웹의 연동을 통해 음성 파일에 대한 메모를 작성하는 방법, 시스템, 및 컴퓨터 판독가능한 기록 매체
US11626104B2 (en) * 2020-12-08 2023-04-11 Qualcomm Incorporated User speech profile management
KR102548618B1 (ko) * 2021-01-25 2023-06-27 박상래 음성인식 및 음성합성을 이용한 무선통신장치
TWI755328B (zh) * 2021-05-24 2022-02-11 中華電信股份有限公司 孩童聲音偵測系統、方法及電腦可讀媒介
US11960615B2 (en) 2021-06-06 2024-04-16 Apple Inc. Methods and user interfaces for voice-based user profile management

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04158397A (ja) 1990-10-22 1992-06-01 A T R Jido Honyaku Denwa Kenkyusho:Kk 声質変換方式
AU720511B2 (en) 1995-08-24 2000-06-01 British Telecommunications Public Limited Company Pattern recognition
US5960389A (en) 1996-11-15 1999-09-28 Nokia Mobile Phones Limited Methods for generating comfort noise during discontinuous transmission
JP3198969B2 (ja) 1997-03-28 2001-08-13 日本電気株式会社 デジタル音声無線伝送システム、デジタル音声無線送信装置およびデジタル音声無線受信再生装置
AU4394300A (en) 1999-05-19 2000-12-12 Noisecom Aps A method and apparatus for noise reduction in speech signals
US20020174188A1 (en) 2001-04-30 2002-11-21 Objectsoft, Inc. Method and apparatus for exchanging contact information
JP3762327B2 (ja) 2002-04-24 2006-04-05 株式会社東芝 音声認識方法および音声認識装置および音声認識プログラム
US8311822B2 (en) 2004-11-02 2012-11-13 Nuance Communications, Inc. Method and system of enabling intelligent and lightweight speech to text transcription through distributed environment
JP4464797B2 (ja) * 2004-11-17 2010-05-19 日本電信電話株式会社 音声認識方法、この方法を実施する装置、プログラムおよびその記録媒体
KR20070018203A (ko) * 2005-08-09 2007-02-14 엘지전자 주식회사 광디스크 장치에서의 오디오 대체 재생방법
US7720681B2 (en) * 2006-03-23 2010-05-18 Microsoft Corporation Digital voice profiles
JP4734155B2 (ja) 2006-03-24 2011-07-27 株式会社東芝 音声認識装置、音声認識方法および音声認識プログラム
KR101233167B1 (ko) * 2006-04-14 2013-02-15 엘지전자 주식회사 녹화물 표시 장치 및 방법
JP4946293B2 (ja) 2006-09-13 2012-06-06 富士通株式会社 音声強調装置、音声強調プログラムおよび音声強調方法
US8214208B2 (en) 2006-09-28 2012-07-03 Reqall, Inc. Method and system for sharing portable voice profiles
US7813924B2 (en) 2007-04-10 2010-10-12 Nokia Corporation Voice conversion training and data collection
JP2011064913A (ja) * 2009-09-16 2011-03-31 Ntt Docomo Inc 電話システム、端末装置、音声モデル更新装置、および音声モデル更新方法
US20120105719A1 (en) 2010-10-29 2012-05-03 Lsi Corporation Speech substitution of a real-time multimedia presentation
US20120265533A1 (en) 2011-04-18 2012-10-18 Apple Inc. Voice assignment for text-to-speech output
US9799328B2 (en) 2012-08-03 2017-10-24 Veveo, Inc. Method for using pauses detected in speech input to assist in interpreting the input during conversational interaction for information retrieval
US9666204B2 (en) * 2014-04-30 2017-05-30 Qualcomm Incorporated Voice profile management and speech signal generation

Also Published As

Publication number Publication date
KR102317296B1 (ko) 2021-10-26
US20150317977A1 (en) 2015-11-05
BR112016025110A2 (pt) 2017-08-15
CN106463142B (zh) 2018-08-03
KR20180014879A (ko) 2018-02-09
EP3138097B1 (en) 2018-04-04
JP6374028B2 (ja) 2018-08-15
KR20190060004A (ko) 2019-05-31
EP3138097A1 (en) 2017-03-08
US20170256268A1 (en) 2017-09-07
KR101827670B1 (ko) 2018-02-08
KR102053553B1 (ko) 2019-12-06
KR20170003587A (ko) 2017-01-09
EP3416166A1 (en) 2018-12-19
JP6790029B2 (ja) 2020-11-25
JP2018205751A (ja) 2018-12-27
US9875752B2 (en) 2018-01-23
CN106463142A (zh) 2017-02-22
EP3416166B1 (en) 2020-08-26
US9666204B2 (en) 2017-05-30
JP2017515395A (ja) 2017-06-08
WO2015168444A1 (en) 2015-11-05

Similar Documents

Publication Publication Date Title
JP6790029B2 (ja) 音声プロファイルを管理し、発話信号を生成するためのデバイス
US10540979B2 (en) User interface for secure access to a device using speaker verification
US11721349B2 (en) Methods, encoder and decoder for linear predictive encoding and decoding of sound signals upon transition between frames having different sampling rates
US20120303369A1 (en) Energy-Efficient Unobtrusive Identification of a Speaker
TWI520130B (zh) 用於減低潛在的訊框不穩定性之系統及方法
BR112016030056B1 (pt) Aperfeiçoamento de classificação entre codificação de domínio de tempo e codificação de domínio de frequência
RU2636685C2 (ru) Решение относительно наличия/отсутствия вокализации для обработки речи
BR112018002979B1 (pt) Controle de sinal-alvo de banda alta
BR112016022764B1 (pt) Aparelho e métodos de comutação de tecnologias de codificação em um dispositivo
US11526734B2 (en) Method and apparatus for recurrent auto-encoding
Vicente-Peña et al. Band-pass filtering of the time sequences of spectral parameters for robust wireless speech recognition
Uzun et al. Performance improvement in distributed Turkish continuous speech recognition system using packet loss concealment techniques
Fernández Gallardo et al. Automatic Speaker Verification Performance Under Channel Distortions
Tan et al. Distributed speech recognition standards
PROFANT ROBUST SPEAKER VERIFICATION

Legal Events

Date Code Title Description
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B350 Update of information on the portal [chapter 15.35 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 30/04/2015, OBSERVADAS AS CONDICOES LEGAIS