 |
This module refers to LabVIEW, a software development environment that features a graphical programming language.
Please see the LabVIEW QuickStart Guide module for tutorials and documentation that will help you: |
| • Apply LabVIEW to Audio Signal Processing |
| • Get started with LabVIEW |
| • Obtain a fully-functional evaluation edition of LabVIEW |
Introduction
Subtractive synthesis methods are characterized by a wideband excitation source followed
by a time-varying filter. Linear prediction provides an effective way to estimate
the time-varying filter coefficients by analyzing an existing music or speech signal.
Linear predictive coding (LPC) is one of the first applications of linear
prediction to the problem of speech compression. In this application, a speech signal is modelled as
a time-varying digital filter driven by an innovations sequence. The LPC method identifies
the filter coefficients by minimizing the prediction error between the filter output and the original
signal. Significant compression is possible because the innovations sequence and filter coefficients
require less space than the original signal.
Cross synthesis is a musical adaptation of the speech compression technique. A musical
instrument or speech signal serves as the original signal to be analyzed. Once the filter coefficients
have been estimated, the innovations sequence is discarded and another signal is used as the filter
excitation. For example, a "singing guitar" effect is created by deriving the filter coefficients from
a speech signal and driving the filter with the sound of an electric guitar; listen to the audio clips below:
- speech.wav -- Speech signal for digital filter coefficients
(audio courtesy of the Open Speech Repository,
www.voiptroubleshooter.com/open_speech;
the sentences are two of the many phonetically balanced Harvard Sentences, an important standard
for the speech processing community)
- eguitar.wav -- Electric guitar signal for filter input
- speech_eguitar.wav -- Cross-synthesized result (filter output)
Linear Prediction Theory
The
Figure 1 screencast video develops the theory behind linear prediction and describes
how the technique is applied to musical signals. Practical issues such as choosing the filter block size and filter order
are also discussed.
Linear Prediction Implementation
The previous section explains how you can use the all-pole filter model to implement
cross synthesis. But how are the all-pole filter coefficients actually created?
The LabVIEW MathScript feature includes the function lpc, which accepts a signal
(1-D vector or array) and the desired filter order and returns an array of filter coefficients.
For details, select "Tools | MathScript Window" and type help lpc.
"This online course covers signal processing concepts using music and audio to keep the subject relevant and interesting. Written by Prof. Ed Doering from the Rose-Hulman Institute of Technology, […]"