Página anterior    Harmony Assistant    Página seguinte 
 

Introdução
Produtos
What's new ?
Manipulação
Notação
Escutar
Dispositivos/scripting
Virtual Singer
Introdução
Criação rápida
Cantar o FaSoLa
Gregoriano
Jazz Scat
Midi & ABC
Regras de escrita
Aspectos técnicos
Configuração
SAMPA
Perguntas Mais Frequentes
Comandos
Real Singer
Introdução
Gravando a voz
Ajustando fonemas
Factores a considerar
Ajustes fonéticos
Aspectos técnicos
Bibliografia e agradecimentos
FAQ
Licença de utilização
Ajuda Técnica
Apêndice
Impressão do Manual


Novo capitulo : Em Inglês :

 

RealSinger

Aspectos técnicos


Nota : Esta página contém uma curta descrição dos métodos usados pelo RealSinger na produção da voz.
Não é necessário ler este capítulo para poder usar o RealSinger.
É capítulo, serve de facto para responder a algumas questões técnicas que os utilizadores possam colocar acerca dos algorítmos internos, e que não são necessários para usar este programa.

Introdução

Para criar uma síntese realística da voz, a primeira ideia que vem à mente do programador é a de usar uma colecção de fonemas gravados e usá-los para gerar a voz.

Três problemas surgem rápidamente :

  1. O algorítmo deve ser capaz de gerar o fonema com qualquer frequência (frequência fundamental). Gravando todos os fonemas a todas as possíveis frequências não é apropriado, porque poderá ser um processo longo e complexo de aprendizagem, assim como teria ficheiros de voz muito grandes.
  2. O algorítmo deverá ser capaz de prolongar o fonema para qualquer duração.
  3. O algorítmo deverá ser capaz de gerar transições suaves de um fonema para outro, de forma a simular o fenómeno da coarticulação (a audição do fonema seguinte inicia-se enquanto o anterior aínda não está completamente terminado).
Na literatura informática, pode ser encontrada uma solução para cada um destes problemas.

Para os problemas 1 e 2, já foram desenvolvidos alguns algorítmos eficientes. Eles processam directamente o sinal digital da amostra gravada e permitem alterar a frequência (altura) assim como a duração. Estes algorítmos são usados na maioria dos editores de som conhecidos para a alteração independente da altura ou da velocidade de um ficheiro de som. Eles também são usados com sucesso na síntese da fala, porque as variações de frequência (altura) da fala são pequenas.
No entanto, no caso da voz cantada, estes algorítmos não podem ser usados porque eles não são eficientes porque a variação em altura é muito importante. O resultado em si não está errado, mas a voz é distorcida à semelhança da reprodução de uma fita magnética a alta velocidade.

Para o problema 3, a maneira mais comum de obter um bom resultado é, não só gravar os fonemas de uma liguagem, mas também todas as combinações possíveis de dois ou três fonemas (difonemas/trifonemas). Este sistema armazena o efeito da coarticulação e torna a voz síntetizada mais realística. No entanto, também aqui, o processo de aprendizagem é trabalhose e moroso, e necessita por vezes de várias horas de gravação. O ficheiro de voz resultante é muito grande (vários megabytes).

O RealSinger usa algorítmos originais para solucionar estes três problemas ao mesmo tempo, através da manipulação espectral da frequência.
Alguns sintetizadores de fala já tentaram usar os espectros de frequência da voz para gerar a voz.
No entanto, verificou-se que este método era dificil de implementar, porque regenerar um sinal a partir de um espectro processado que use uma "Fast Fourier Transform (IFFT)" inversa, necessita que os valores da "fase" sejam reajustados adequadamente, por outro lado, as partes consecutivas de um sinal não se juntam e um ruído de fundo não desejado será ouvido.

Espectro da voz

Quando se canta ou se fala, a forma de onda da fonte glotal (o som produzido pelas cordas vocais quando excitadas pelo fluxo de ar proveniente dos pulmões) é uma combinação de harmónicas (múltiplas frequências da frequência fundamental f0).

Num gráfico de potência/frequência, esta fonte de som glotal parece-se com um pente, cada dente do pente está localizado numa frequência que é um múltiplo da fundamental f0:

Quando a frequência da voz aumenta, a primeira harmónica desloca-se para a direita (frequência mais alta), e a diferença de frequência entre duas harmónicas consecutivas também aumenta, para ficar igual a f0.

Ao passar através do canal vocal, as cavidades ressonantes destacam algumas frequências e atenuam outras. Isto resulta em áreas com frequências de alta-potência nas quais as harmónicas são fortes, e área de frequência de baixa-potência, nas quais as harmónicas são fracas. Este espectro do canal vocal depende do fonema a ser dito ou cantado, e é mais ou menos inalterado quando a frequência (altura) aumenta ou diminui.
A convulsão destes dois espectros (fonte glótica e canal vocal) resulta num espectro, no qual o ouvinte pode determinar tanto o fonema (o que foi dito) com a frequência (nota cantada).

Fundamento do RealSinger

O objectivo do RealSinger é, para cada fonema de uma dada linguagem, aplicar uma deconvulsão ao sínal gravado de forma a separar os espectros da fonte glótica e do canal vocal. Então ele só armazena o espectro do canal vocal, e aplicará uma fonte glotal gerada a este espectro de forma a simular o fonema original gravado a ser cantado em qualquer frequência.

Processo de aprendizagem

  • Ao orador é pedido que pronúncie uma palavra para cada fonema da linguagem escolhida.
  • Cada palavra é gravada como qualquer som normal.
  • Então, o fonema é isolado na palavra e o sinal é cortado para manter apenas esta parte.
  • É cálculado um espectro com a média da frequência do som.
  • Este espectro é deconvolucionado para eliminar a influência da fonte glótica, e só mantém a curva da frequência do ressonador do canal vocal.
  • Este pseudo-espectro é armazenado (menos de 100 valores de vírgula-flutuante para cada fonema)
  • Para os fonema de variação-temporal, vários pseudo-espectros são armazenados para manter a informação acerca das alterações do espectro.
Este algorítmo permite-lhe armazenar somente alguns valores para cada fonema, o que significa ficheiro de voz pequenos (menos de 40 Kb depois de comprimidos).

Criação da voz

  • Para cada fonema a ser cantado, o pseudo-espectro correspondente é extraído. Nas partes de transição entre dois fonemas, ambos os pseudo-espectros destorcidos e de seguida são unidos para simular o processo de coarticulação.
  • Uma fonte glotal sintética é gerada, na frequência pretendida. O espectro da fonte glotal pode ser aqui modificado fácilmente para alterar o timbre da voz na totalidade (para a equalização ou aplicação de vários efeitos vocoder).
  • Esta fonte é re-convolutoda com o pseudo-espectro do fonema
  • O espectro é então processado por uma transformada de fase-livre para gerar um fragmento normal de som.
Este algorítmo simula os efeitos da coarticulação. Portanto não é necessário gravar todo o conjunto de difonemas ou trifonemas. Só são necessários fonemas puros.



(c) Myriad 2010