Simple real time control phase vocoder?
Hey guys,
I'm not sure if anyone here is familiar with CSound but it'san audio synthesizer program that works by typing in code and then running the code in the program.
Their is a great PVOC code that allows you to run a sound through the phase vocoder and then set parameters. So you can have it play stretch the sound file to say . . . .30 seconds.
In those 30 seconds you can have it change pitch and the texture over a certain amount of time. The end result is a sound that sounds like it's evolving - it's REALLY nice.
However, I'm scoring to a video and the video is very fast moving so it would be impossible for me to enter each time of change manually and so I'm looking for a Max Patch that allows real time manipulation of sounds using a phase vocoder? Are there any examples that I can use? The video I'm scoring to has a lot of lines that move around the screen and break up , so I'm really looking for sounds that sound as if they are being distorted and disintegrated into different partials and tones. (like the attached file).
I've included an example of a sound used in PVOC in case you can recommend me something else. The changes in texture and pitch that occur have to be manually timed out in parameters and this is near impossible to do accurately for a video.
Thanks a lot for any help at all that you can give!!
Aaron.
The words "real-time" and "Phase vocoder" when used together always pique my interest! Philosophically speaking, I'm guessing you mean taking a pre-recorded audio file and tweaking the parameters of a phase-vocoder-style re-synthesis algorithm while it is "playing back" the file, right?
There's a pretty simple example patch included with the MSP tutorials in the chapter about pfft~. This, with a little tweaking, gives you simple control over the "playback rate" of a file that is being transformed with the fft algorithm, either as real/imaginary pairs or with poltocar~ as amplitude and phase coefficients. The end result can begin to sound like granular synthesis after a while...
Look at MSP tutorials 25 and 26 and the pvoc info there. I've tweaked around with these and had reasonable results.
Back to the philosophy of "real-time" phase vocoding, I've also managed to build a network which begins recording a file at a trigger and then allows the user to "slow time" in "real time" and then speed things up again, but can only ever get it to "catch up" to now... ;)
Thanks a lot for the help.
I'm really a Max novice so I'm thrilled you were able to give me the tutorial to look for :D
Yes I really just want a sound to "evolve" (like the sound file I gave you) by messing with parameters as I watch the video - thus fooling the viewer of my video into thinking the video and sound are connected.
Thanks a lot for that - I can't wait to try out that example patch tomorrow! Thanks a lot mate. :)