Generation of Vibrato in Expressive Performances in MIDI
by Aaron Yang
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.
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.
Comparison of Sound Samples
The MIDI sample is Saint-Saens' The Swan from the Carnival of Animals suite
Using Modulation Event with parameter of 127
Using Modulation Event with parameter of 64
Output of the program
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.
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.
Using a rule-based system for varying vibrato through a piece.
Desain, P., Aarts, R., Honing, H., & Timmers, R., (1999). Rhythmic
Aspects of Vibrato. In Desain, P. and Windsor, W. L. (eds.) Rhythm
Perception and Production (pp. 203-216). Lisse: Swets & Zeitlinger
Desain, P.W.M., & Honing, H.J. (1996). Modeling Continuous Aspects of Music Performance: Vibrato and Portamento. Keynote abstract. In B. Pennycook, & E. Costa-Giomi (Eds.), Proceedings of the International Music Perception and Cognition Conference (pp. CD-rom). Montreal.
Schoonderwaldt, E. & Friberg, A. (2001), Toward a rule-based model for violin vibrato, In proceedings of the Workshop on Current Research Directions in Computer Music Barcelona, Spain: Pompeu Fabra University, Audiovisual Institute, pp. 61-64.
Seashore, C., ed. 1938. Studies in the psychology of music Vol. 1: The vibrato. Iowa City:
University of Iowa City.
Timmers, R., and Desain, P. (2000). Vibrato: questions and answers from musicians
and science. Proceedings of the sixth ICMPC. Keele.
MIDI Note Number to Frequency Conversion Chart
Vibrato: some historical notes for string players
Tremolo or "Real" Vibrato
An Introduction To Frequency Modulation
Comp685B Computer Music @ Hong Kong University of Science and Technology
The MMM group @ University of Nijmegen (KUN) and the University of Amsterdam (UvA)
Music Technology Handouts: Controllers