tags:

views:

144

answers:

2

Hi,

I am creating an iPhone application in which when I make a call to anyone I should be able to change the pitch of my call voice in real time.

So for that which framework or any third party library should I use?

Thanks, Sunil.

A: 

For speech your best bet is probably an implementation of PSOLA. This allows pitch shifting and/or time compression/expansion. You can either implement it yourself (it's fairly straightforward if you're familiar with DSP etc) or Google for open source implementations.

Paul R
Hi ,Thanks for reply. I am looking for kind of library or framework available on iPhone which i can use directly .Please let me know if you have any idea about this kind of thing.Thanks,Sunil.
@user340007: did you actually try *looking* for an open source implementation of PSOLA that you could just compile and link in with your iPhone code ?
Paul R
A: 

If we want to change sound pith it looks most natural to transform small sound segments into the frequency domain using FFT, then shift frequency distribution and return back to the time domain using inverse FFT. Yes, it works, but unfortunately algorithms of this kind is too time consuming for iPhone. But there are also other group of SOLA-like algoritms, they simplest versions can be implemented on iPhone.
Follow this links for libraries and more info:

http://www.dspdimension.com/admin/time-pitch-overview
http://www.surina.net/soundtouch/index.html#download
http://www.guitarpitchshifter.com/algorithm.html

Vladimir