The Phase Vocoder

There are lots of varieties of the phase vocoder floating around.  The one we will use is Professor Paul Koonce's adaptation of the version by F. R. Moore.

1) copy /u/paul/m325/S.plainpv to your home directory.   This is a shell script you run to feed arguments to plainpv,  (which is the mother of all commandline argument grubbers.)   You will edit the script, setting values and arguments to setup various commandline options.

2) Here is an explanation of some of the arguments.

3) Finally, there is a really, really, really Kool feature which allows you to dynamically change the parameters of a synthesis.

4) To run your synthesis simply say

sh < S.plainpv

Note:  The phase vocoder requires file to be in .snd (next) format, short, 16-bit integers.

WARNING: depending on your arguments it can grind very slowly.  Best to test with short files or segments first.

ANOTHER WARNING: don't leave space around = signs in shell scripts.

Plainpv is just the simplest of a number of routines Koonce has written, The read his introduction. More advanced scripts are in /var/cs325/paul/PVC.1.0/SCRIPTS.

Some things to try:
 

  • write a short piece made entirely from one 5 second sound segment
  • construct a martian orchestra from the sound files in the sgi midi soundlibrary (/var/cs325/sounds).
  • experiment with designing your own dynamic alterations of sounds.