next up previous contents
Seguinte: Parte Teórica Acima: Modelo LPC Anterior: Codificação, Compressão ou Análise   Conteúdo

Descodificação, Descompressão ou Síntese LPC

Cada bloco/frame é descodificado individualmente e a sequência dos blocos/frames de voz, quando reproduzida (ou sintetizada), irá assemelhar-se ao sinal de voz dado como input.

O descodificador, efectua a síntese LPC usando os parâmetros de produção de voz que recebe do codificador para construir um filtro, o chamado filtro LPC, que tenta imitar o tracto vocal no processo de produção de voz humana.

O filtro LPC não passa de um filtro digital, uma técnica usada em 'Digital Signal Processing' (DSP).

Esta técnica consiste geralmente numa transformação de um número de samples adjacentes a uma sample do sinal de input.

Os filtros designados de Finite Impulse Response(FIR) baseiam-se apenas no sinal de input.

Os filtros designados de Ïnfinite Impulse Response, são um caso particular dos anteriores e baseiam-se no sinal de input e nas samples anteriores do sinal de output.

O filtro LPC, quando lhe é passado o sinal de excitação correcto é capaz de reproduzir o sinal de voz original (imitando então o processo de produção de voz humana).

Mais propriamente, a excitação ou turbulência do ar que percorre o tracto vocal é a fonte do som. Esta pode ser periódica, quando se produz sons vozeados, ou aleatória, quando se produz sons não vozeados.

Image excitacao

Cada frame é então analisado para determinar se é vozeado ou não vozeado conforme o parâmetro do pitch.

Isto exactamente para distinguir o tipo de excitação que deve ser usada no filtro LPC.

Image lpc_decoder

Para frames considerados vozeados é usada uma sequência de impulsos como excitação. O cálculo do pitch no codificador serve agora para determinar a frequência de cada impulso. Caso não seja vozeado, é usado uma sequência de números pseudo-aleatórios.

A sequência de impulsos é uma sequência como: 0, ...,0,1,0, ... ,0,1, ...em que o ``um'' ocorre com a frequência que se quiser.

Image impulse

Por exemplo, caso se considere frames de 160 samples (equivalente a 20 msec) e uma frequência de 50 Hz, um impulso ocorrerá 50 vezes por segundo no inicio da sequência.

Cada segmento de voz tem um filtro LPC diferente que é produzido usando os coeficientes e o ganho que são recebidos do codificador.

O último passo para descodificar um segmento de voz é passar o sinal de excitação no filtro de maneira a sintetizar a voz.

Para garantir que estamos a fazer a síntese correctamente, pode-se comparar a onda do sinal de voz dado como input e a onda de voz sintetizada. Isto pode ser feito por exemplo usando o GNU Octave e o GNU Plot (ver apêndice 1).


next up previous contents
Seguinte: Parte Teórica Acima: Modelo LPC Anterior: Codificação, Compressão ou Análise   Conteúdo
2003-07-23