Google Answers Logo
View Question
 
Q: Pitch Scaling using a Phase Vocoder ( No Answer,   3 Comments )
Question  
Subject: Pitch Scaling using a Phase Vocoder
Category: Computers
Asked by: joeblack-ga
List Price: $2.00
Posted: 06 Mar 2003 16:15 PST
Expires: 05 Apr 2003 16:15 PST
Question ID: 172923
I want a MATLAB implementation for Pitch Scaling (with out changing
the length) of audio signals using a Phase Vocoder algorithm. I have
already found an implementation of a Phase Vocoder for Time Scaling
(with out affecting the Pitch) of an audio signal at the following
website:

http://www.ee.columbia.edu/~dpwe/resources/matlab/pvoc-matlab.html
Answer  
There is no answer at this time.

Comments  
Subject: Re: Pitch Scaling using a Phase Vocoder
From: peter_pan-ga on 07 Mar 2003 02:57 PST
 
You can get the pitch change by applying the time change algorithm
then resampling to change the time back to what it was.

E.g 1 you want to double the pitch ..

Use Phase Vocoder to double the time for the sample (pitch unchanged,
time doubled)
Re-sample to halve the time for the sample (Pitch doubled, time
unchanged)

E.g 2 you want to halve the pitch ..

Re-sample to double the time for the sample (Pitch halved, time
doubled)
Use Phase Vocoder to halve the time for the sample (pitch halved, time
unchanged)

This should work for any change needed.

Lastly the reason e.g. 2 is done 'backwards' compared to e.g.1 is to
minimise any aliasing artifacts.
Subject: Re: Pitch Scaling using a Phase Vocoder
From: joeblack-ga on 07 Mar 2003 11:00 PST
 
Hi, 
Thank you for you comment. 

I have tried to follow your procedure, but when I write the modified
signal into a wave file and compare the lengths of the two signals, I
notice that there is a small difference in length between them. Is
that Normal?
Subject: Re: Pitch Scaling using a Phase Vocoder
From: peter_pan-ga on 18 Mar 2003 02:31 PST
 
In an ideal world there wouldn't be any difference in length. If the
resulting .wav file sounds right I'd ignore any small changes in
length.

If it's the file length that changes it could be different header
information, there are some chunks that can be added or removed from
.wav headers without changing the sample at all.

If the sample length is changing itcould be that the phase vocoder, or
the re-sampling, is not doing exactly whatever fraction you're asking
for.

If this is the case and your sample starts or ends with silence you
could add or trim this to match the overall sample lengths.

Hope this helps.

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy