File Exchange

image thumbnail

LPC Vocoder

version 1.4 (2.17 MB) by

Builds an LPC vocoder, i.e., performs LPC analysis and synthesis on a speech file

13 Downloads

Updated

View License

Speech processing designates a team consisting of Prof. Lawrence Rabiner (Rutgers University and University of California, Santa Barbara), Prof. Ronald Schafer (Stanford University), Kirty Vedula and Siva Yedithi (Rutgers University). This exercise is one of a set of speech processing exercises that are intended to supplement the teaching material in the textbook “Theory and Applications of Digital Speech Processing” by L R Rabiner and R W Schafer.
This MATLAB exercise builds an LPC vocoder, i.e., performs LPC analysis and synthesis on a speech file, resulting in a synthetic speech approximation to the original speech. The LPC analysis uses a standard autocorrelation analysis to determine the sets of LPC coefficients, on a frame-by-frame basis, along with the frame-based gain, G. An independent analysis method (a cepstral pitch period detector) classifies each frame of speech as being either voiced speech (with period determined by the location of the cepstral peak in a designated range of pitch periods) or unvoiced speech (simulated by a random noise frame) designated as a frame pitch period of 0 samples. The independent analysis provides a two-state excitation function for the LPC synthesis part of the processing, consisting of a series of pitch pulses (during voiced frames) and/or noise sequences (during unvoiced frames).

Comments and Ratings (6)

Hi ABlackBox:
Try to put the wav file in the same directory.

But if does not work Try to work with this other code of LPC Vocoder:

http://www.mathworks.com/matlabcentral/fileexchange/52114-lpc-vocoder

Best regards.

Jesús.

ABlackBox

Hi, I am in need of a bit of help with this program code, I can record a speech and I pick my Lm as 20msec and Rm as 5msec, male pitch, cepstral pitch isyn as 10msec and 2 as number of overlapping. I click on Run LPC vocoder It can generate a pitch graph. the problem is when I click on "Play Synthesised Speech" I get the following message.

Warning: WAVREAD will be removed in a future release. Use AUDIOREAD instead.
> In wavread (line 62)
In Callbacks_lpc_vocoder_GUI25/button14Callback (line 593)
Error using wavread (line 70)
Invalid Wave File. Reason: Cannot open file.

Error in Callbacks_lpc_vocoder_GUI25/button14Callback (line 593)
[sn,fs]=wavread(strcat(fname,'_synthetic.wav'));

Error while evaluating UIControl Callback

Any suggestions!!!

john2000

Hi guys,

Nice work!
However, I'm a bit confused with the way you estimate gain: G=sqrt(sum(A.*r));

Shouldn't it be estimated as
sqrt(A(1)*r(1)-sum(A(2:end).*r(2:end))) according to the theory?

I really appreciate any help you can provide.

kindly update the path-to-speech variable in pathnew_matlab_central.m
New versions of Matlab treat it as a negative sign.
Thank you for the download.

sairam

sairam (view profile)

hello guys can u please say me how to download it

María Claro

Thanks for your input

Updates

1.4

Updated to work with post-R2014b graphics

1.2

code updates; Read_Me.txt setup file; pathnew_matlab_central example

1.1

Includes speech files fix

MATLAB Release
MATLAB 8.0 (R2012b)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video