Next  |  Prev  |  Top  |  REALSIMPLE Top

Investigation In pd

Now that you understand the basics of the virtual flute model, you will have the opportunity to ``play'' it in pd.

  1. Install the flute~ extern.

  2. Download the pd patch flute.pd, and open it in pd.

  3. Ensure that the patch is not in editing mode, check the ``compute audio'' box in the main pd window, and increase the ``Output volume'' slider until the the volume level is comfortable.

  4. To adjust values stored in number boxes, you can either click on a box, type in a new number, and press enter, or you can drag up and down from the box with the mouse. Using one of these methods, increase the ``Frequency'' number box to 400. Now the spectrum should look similar to the one shown in Figure 4.
    Figure 4: Example spectrum of flute~ output with fundamental frequency slightly more than 400Hz
    \includegraphics{figures/spectrum.eps}

  5. If the spectrum looks too small, it may help to also increase the ``Amplitude'' number box. The amplitude adjustment is responsible both for the average pressure in the flute due to the flutist's breath as well as a scaling of the output signal $p(L,t)$.

  6. Consider the difference in behavior if you blow softly on a real flute, if you blow normally on a real flute, or if you blow very hard. Carry out this experiment on the virtual model with the ``Breath Pressure'' slider. First move the slider all of the way to the right, which corresponds to blowing hard. How does the model behave? Now investigate the behavior for intermediate and low breath pressures. Is this what you expected?

  7. Now try toggling the ``Blowing On/Off'' switch on and off. When the toggle is off, no breath pressure is applied. When the toggle is on, breath pressure is applied according to the ``Breath Pressure'' slider. Listen carefully to the sound of the model when the toggle is switched. This should sound like a real flute. This is one of the advantages of physical models. Because the computer is simulating physical behavior, changing model parameters in real time results in especially realistic sounds.

  8. After adjusting parameters for a while, you may find that the pitch produced by flute~ differs significantly from the number in the ``Frequency'' number box. When this happens, the pitch will generally differ by an octave or two. This means that the virtual flute player is overblowing the virtual flute. (You can tell approximately what pitch is being produced by looking at the frequency of the lowest harmonic shown on the spectrum. Disregard any apparent ``harmonics'' at 0Hz-these are inaudible.)

  9. In this scenario, vibrato refers to a sinusoidal variation in the breath pressure. Flutists produce this effect by varying their breath pressure at a rate on the order of 6Hz. Investigate the effect of changing the ``Vibrato Gain'' and ``Vibrato Frequency'' sliders. Which ranges of vibrato gains and frequencies are physically reasonable, and which ranges would not normally be played by flutists? At what maximum rate can you vary your own breathing?

  10. Adjust the sliders and number boxes so that they match the pd patch shown in Figure 5. Now you will learn about subpatches, which are Pd patches that are embedded within higher-level patches. Double-click on the subpatch pd cc. Here you will find additional sliders that control more unusual parameters of the model. Look at the spectrum as you adjust the ``Noise Gain'' slider back and forth between minimum (left) and maximum (right). If you look carefully, you should notice that the spectrum looks chaotically grainy in between harmonics when the noise gain is adjusted to its maximum value. You are actually observing the effects of the broadband noise. You should hear that the output sounds more like static or poor radio reception as you increase the noise gain.

Figure 5: Sample settings for the main-level pd patch flute.pd
\resizebox{2.75in}{!}{\includegraphics{\figdir /controls.eps}}


Next  |  Prev  |  Top  |  REALSIMPLE Top

Download vir_flute.pdf

``Virtual Flute'', by Edgar J. Berdahl, and Julius O. Smith III,
REALSIMPLE Project — work supported by the Wallenberg Global Learning Network .
Released 2008-06-05 under the Creative Commons License (Attribution 2.5), by Edgar J. Berdahl, and Julius O. Smith III
Center for Computer Research in Music and Acoustics (CCRMA),   Stanford University
CCRMA