From the original SynthMaker forum (2004–2014), with its members’ names and dates.
Sk ·
Here's my problem. I want to play "Smokin'" by the Boston. The guy played a modified spinet Hammond with a pitch-bend wheel: you can hear this as in the third part of this 3 minutes solo he actually bends up a trill. I tried to work around it but couldn't find anything I liked, so let's say I want a Hammond to pitch-bend.
Since my SM Hammond emulator simply sucks (I mean, right structure and such, but the sound - light years away from good ol' Laurens), I use NI's B4, which is wonderful. The problem is that the B4 will never pitch-bend, since it simply ignores PB messages. So I'm thinking of a way to change the frequency after the B4's output.
In short, I want to create a VST that takes a stereo input, a MIDI input and produces a stereo output whose pitch is shifted according to the pitch-bend received. The actual complexity is the pitch shifting - the only thing I could think of is to mix-and-filter.
Let's say you have frequency f0, and you want to shift it to f1=f0+f. Then, beating f0 with a wave with frequency f will produce two frequencies: f0+f=f1 and f0-f. Now a HPF can remove the lower beating, thus obtaining a (more or less pure) wave with frequency f1.
Anyway, this method is quite complicated and computationally-heavy to implement, since it would require to compute each time the filter's coefficients, the beating frequency and the beat itself. Anyone knows of a better method not bound to these kind of trigonometry (Werner formulas, if I'm not wrong)?
Thanks,
Sk
fritzman ·
Hi Sk,
there was a pitch shifter example floating around on this forum. It didn't sound tooooo good but could be a starting point. Shouldn't be too hard to attach the pitch knob to a pitch bend message?
Best wishes, FRitz
Sk ·
Thanks fritz and sorry for the delay. I've looked for the shifter but I can't get it. Do you have it? If so, could you share it? Thanks!
sambean ·
Hey Sk..
I was responsible for that pitchshifter 🙂.. The algo is pretty simple(1 buffer-2 pointers at different speeds) and hence the sound quality is quite poor, I'd say it's only really useful as an effect as opposed to a reliable method of shifting the freq.
But here it is besides.
Cheers
Sam
sambean ·
Here's another attempt I had at Pitch Scaling..
The quality is still quite ropey, but again may be useful as an effect.. We'll probably need to wait until we get the FFT in code before we can do higher quality scaling..
It's based very loosely on the principle of a Harmoniser
Stereo Harmoniser
* The amount controls the scaling (-1 up 1 octave, 1 down 1 octave)
* TODO Make it fixed delay. ATM different amounts add different delay to the signal.
Cheers
Sam
EDIT: Link was broken.. Fixed now.. Thanks Stefan
Sk ·
Thanks a lot sambean! I'm gonna try to amke something useful out of that 🙂
doug4350 ·
That's something that'll come in handy for me too down the road 😍 I'll need to be able to pitch bend samples or live audio feeds. I also had this wild idea for a glissando effect for vocals that would basically be a pitch corrector as the vocalist belted out a stretched range.
This brings to mind the middle part Godzilla by BOC. Not to mention those early analog delays that would pitch shift as you changed the delay rate.
Now if I could only get out of this home improvement mode 😠 and back to fun stuff.
Aloha,
Doug
Wrote something here? To have a post removed or your name hidden, write to [email protected].