Goal
The goal of this experimental project is to be able to generate
believable vibrato in expressive MIDI music.

What is Vibrato?
Seashore(1938) answers this by saying: “Good vibrato is a pulsation of
pitch, usually accompanied with
synchronous pulsations of loudness and timbre, of such extent and rate
as to give a pleasing flexibility, tenderness, and richness to the
tone.”

So vibrato involves not only pitch, but also loudness and timbre.
It is used to add warmth and expressiveness to notes.

It was once considered ornamentation used in performance. It is more
consistently used in modern day performances. Vocals, stringed and wind
instruments are all capable of creating consistent vibrato.

From (http://www.users.globalnet.co.uk/~bunce/control.htm)

Other related music elements:
Tremolo - This is just a modulation of volume.
Trill - A rapid alternation of a note and another note a semi-tone or
whole tone above it.
Portamento - A smooth transition between two notes in while notes in
between are also heard.
A Relation of Vibrato to
Engineering
Vibrato is none other than a modulation of pitches or
frequencies. Frequency Modulation (FM) is used for the
transmission of radio broadcasts.
John Chowning, by experimenting with different types of vibrato at
Stanford, discovered FM synthesis of sound. FM synthesis was used
in earlier computer sound cards and synthesizers.

Some
Observations About Vibrato (from Timmers & Desain (2000))
Here are some general observations done by researchers on vibrato.

Shape: Generally found to be sinusoidal, but mostly trapezoidal
according to Horii, 1989b.

Direction: Short notes only contain an upper arch (Castellengo,
Richards & d’Alessandro, 1989). Notes generally start with a rising
pitch (Horii, 1989b) and end in the direction of the transition
(Sundberg, 1979).

Width of Modulation - how sharp & flat or how far from the
note being played.

Ways of Generating Vibrato in Music
Symbolic -> Midi has a modulation event which will create vibrato
with a fixed parameter. Unfortunately, the general MIDI
implementation of modulation has one parameter which corresponds
somewhat to width of the vibrato. It is up to the synthesizer
playing the file to create the vibrato. Unfortunately, the
modulation MIDI event is limited in type of vibrato it can
create. It has a limited range of control.

Audio/ Analog -> Using sinusoids, a synthesizer can create
vibrato. A low frequency oscillator can be used to create
waveforms that correspond to effects such as vibrato and tremolo.
Usually, more expensive synthesizers are required to create better
quality vibrato sounds.

The approach of this project models the vibrato with equations used in
audio synthesis of music. The result is then mapped to a MIDI
pitch bend event which will cause an "bend" in the pitch. Many of
these events are inserted into the MIDI file through time to generate
vibrato.

In order to generate vibrato the following equation is used:

f1 is the frequency of the note being played, also known as the
fundamental frequency
These parameters are used:
vibrato rate - This will use a typical value of 8 Hz
vibrato width - 1% of the fundamental frequency, f1, is used. Program Description [ executable ]

The program is implemented in C++ using Craig Sapp's Improv
libraries. It is a console only application. Currently, it
will only generate vibrato for one track of notes at a time.
Certain
instrument sounds are more suitable for the addition of vibrato(strings
& woodwinds) than a normal piano sound. This program
currently generates a uniform vibrato rate & width for the piece.

Conclusion
This project has generated vibrato using normal MIDI
events. It is more economical to use normal MIDI events than an
actual hardware synthesizer. Furthermore, the amount of control
surpasses that of a
MIDI modulation control event. There is more work that could be
done to improve this program.

Future Work
There is a large correlation between vibrato rate and metrical
structure as shown in Timmers & Desain (2000). The project
could be extended to incorporate this.

The University of Southern California does not screen or control the content on this website and thus does not guarantee the accuracy, integrity, or quality of such content. All content on this website is provided by and is the sole responsibility of the person from which such content originated, and such content does not necessarily reflect the opinions of the University administration or the Board of Trustees