LPC Voice Generator — User Guide

Fixed LPC analysis–resynthesis: extracts pitch and a time-varying LPC envelope from the source, generates synthetic phonation, and filters it through the analyzed spectral envelope.

Author: Shai Cohen Affiliation: Department of Music, Bar-Ilan University, Israel Version: 0.3 (2025) License: MIT License Repo: https://github.com/ShaiCohen-ops/Praat-plugin_AudioTools
Contents:

What this does

LPC Voice Generator analyzes the selected sound's pitch and time-varying LPC spectral envelope, generates a synthetic pitch-driven phonation source, and filters that source through the LPC model. The result is a synthetic voice-like rendering whose excitation is artificial but whose broad spectral shaping follows the analyzed source.

This script has no parameter form. Its analysis and synthesis settings are hard-coded. It is therefore a fixed process rather than an adjustable vocoder.

What is LPC?

Linear Predictive Coding / linear prediction models a short segment of speech as the output of an all-pole filter. In source–filter terms, the excitation supplies periodic or noisy energy, while the LPC filter approximates the time-varying resonant envelope associated with the vocal tract. LPC is especially effective on speech and other signals whose spectral envelope can be represented by a relatively small number of resonances.

Source and filter are separated conceptually. This script does not copy the original waveform. It keeps the source's extracted pitch contour, synthesizes a new phonation signal, and passes that synthetic excitation through an LPC filter derived from the original.

Fixed processing

StageHard-coded setting
Pitch analysis75–600 Hz; Pitch object smoothed by 10 before conversion to PitchTier.
ExcitationPitchTier → phonation Sound at 44.1 kHz; adaptation 1, maximum period 0.05 s, open phase 0.7, collision phase 0.03, powers 3 and 4.
LPC analysisAutocorrelation LPC, order 44, 25 ms analysis window, 5 ms frame step, 50 Hz pre-emphasis.
SynthesisThe synthetic phonation Sound is filtered through the time-varying LPC object.
LevelPraat Scale intensity: 70, i.e. 70 dB SPL in Praat's intensity convention, not 70 dBFS.

The output object is renamed voice_synthesized and plays automatically.

Channel note: the script does not contain explicit multichannel routing or channel-preservation logic, and the synthesized excitation is mono. For predictable use, treat it as a mono voice-resynthesis tool rather than a stereo/multichannel processor.

Output and visualization

The Picture window compares the original and synthesized waveforms, plots the extracted 75–600 Hz pitch contour, and shows original and synthesized spectrograms up to 4 kHz. The summary reports LPC order 44, a 25 ms window, 50 Hz pre-emphasis, 44.1 kHz phonation and the 70 dB target intensity.

The script does not apply a final peak ceiling after Scale intensity: 70. The level control is therefore an intensity target rather than a clipping-protection stage.

Historical and technological context

The design belongs to the long source–filter / vocoder lineage. Homer Dudley's Bell Labs work in the 1930s separated speech into an excitation source and a spectral-shaping system, demonstrating that speech-like output could be reconstructed from a buzz or noise source passed through time-varying filters. Linear prediction later provided a compact mathematical model of that spectral envelope. Atal and Hanauer's 1971 analysis–synthesis system explicitly used predictor coefficients, pitch information and voiced/unvoiced excitation; Makhoul's 1975 review became a standard technical reference for LPC.

Compositionally, the important idea is that voice identity can be decomposed and recombined: pitch trajectory, excitation character and resonant envelope need not come from the same physical production mechanism. This script uses that separation in a deliberately synthetic way rather than attempting transparent speech reproduction.

Further reading

Dudley, H. (1939). “The Automatic Synthesis of Speech.” Proceedings of the National Academy of Sciences, 25(7), 377–383. DOI: 10.1073/pnas.25.7.377.

Atal, B. S., & Hanauer, S. L. (1971). “Speech Analysis and Synthesis by Linear Prediction of the Speech Wave.” Journal of the Acoustical Society of America, 50(2B), 637–655. DOI: 10.1121/1.1912679.

Makhoul, J. (1975). “Linear prediction: A tutorial review.” Proceedings of the IEEE, 63(4), 561–580. DOI: 10.1109/PROC.1975.9792.