<< Chapter < Page | Chapter >> Page > |
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 |
Subtractive synthesis techniques apply a filter (usually time-varying) to a wideband excitation source such as noise or a pulse train. The filtershapes the wideband spectrum into the desired spectrum. The excitation/filter technique describes the sound-producing mechanism of many types of physical instruments as well as the human voice, makingsubtractive synthesis an attractive method for physical modeling of real instruments.
A pulse train , a repetitive series of pulses, provides an excitation source that has a perceptible pitch, so in a sense the excitation spectrum is "pre-shaped" before applying it to a filter.Many types of musical instruments use some sort of pulse train as an excitation, notably wind instruments such as brass (e.g., trumpet, trombone, and tuba) and woodwinds (e.g., clarinet, saxophone, oboe, and bassoon). Likewise, the humanvoice begins as a series of pulses produced by vocal cord vibrations, which can be considered the "excitation signal" to the vocal and nasal tract that acts as a resonant cavity to amplify and filterthe "signal."
Traditional rectangular pulse shapes have significant spectral energy contained in harmonics that extend beyond the folding frequency (half of the sampling frequency). These harmonics are subject to aliasing , and are "folded back" into the principal alias , i.e., the spectrum between 0 and ${f}_{s}/2$ . The aliased harmonics are distinctly audible as high-frequency tones that, since undesired, qualify as noise.
The band-limited pulse , however, is free of aliasing problems because its maximum harmonic can be chosen to be below the folding frequency. In this module the mathematics of the band-limited pulse aredeveloped, and a band-limited pulse generator is implemented in LabVIEW.
By definition, a band-limited pulse has zero spectral energy beyond some determined frequency. You can use a truncated Fourier series to create a series of harmonics, or sinusoids, as in :
The screencast video shows how to implement in LabVIEW by introducing the "Tones and Noise" built-in subVI that is part of the "Signal Processing" palette. The video includes a demonstration that relatesthe time-domain pulse shape, spectral behavior, and audible sound of the band-limited pulse.
Download the finished VI from the video: blp_demo.vi . This VI requires installation of the TripleDisplay front-panel indicator.
The truncated Fourier series approach works fine for off-line or batch-mode signal processing. However, in a real-time application the computational cost of generating individual sinusoids becomes prohibitive, especially when a fairly dense spectrumis required (for example, 50 sinusoids).
A closed-form version of the truncated Fourier series equation is presented in (refer to Moore in "References" section below):
where
$\theta =2\pi {f}_{0}t$ . The closed-form version of the summation requires only three sinusoidal oscillators yet can produce an arbitrary number of sinusoidal components.
Implementing contains one significant challenge, however. Note the ratio of two sinusoids on the far right of the equation. The denominator sinusoid periodically passes through zero, leading to a divide-by-zero error. However, because the numerator sinusoidoperates at a frequency that is N times higher, the numerator sinusoid also approaches zero whenever the lower-frequency denominator sinusoid approaches zero. This "0/0" condition converges to either N or -N; the sign can be inferred by looking at adjacent samples.
Notification Switch
Would you like to follow the 'Musical signal processing with labview -- subtractive synthesis' conversation and receive update notifications?