Vibrato and Tremolo Preservation

Preserving sub-audio modulations during phase vocoder time-stretching

A method for preserving vibrato and tremolo during phase vocoder time-stretching. When a phase vocoder time-stretches a sound, sub-audio modulations such as vibrato and tremolo are slowed along with the sound, altering the character of the original performance. This work uses a second-order spectral analysis to identify and extract these modulations before stretching, then re-imposes them at their original rate on the time-stretched result.

Based on Chapter 3 of the dissertation Feature Preservation and Negated Music in a Phase Vocoder Sound Representation (UCSD, 2008).

Code

pv-vibrato-tremolo – Octave source code and sound examples.

Sound Examples

Sine Wave with Amplitude Modulation (Tremolo)

Original AM signal:

Modulation removed:

Time-stretched with modulation removed:

Modulation re-imposed after stretching:

Sine Wave with Frequency Modulation (Vibrato)

Original FM signal:

Modulation removed:

Time-stretched with modulation removed:

Modulation re-imposed after stretching:

Saxophone

Original:

Traditional phase vocoder stretch:

Modulation removed:

Time-stretched with modulation removed:

Modulation re-imposed after stretching:

Violin

Original:

Traditional phase vocoder stretch:

Modulation removed:

Time-stretched with modulation removed:

Modulation re-imposed after stretching:

Flute

Original:

Traditional phase vocoder stretch:

Modulation removed:

Time-stretched with modulation removed:

Modulation re-imposed after stretching: