Subject:Re: [AUDITORY] pitchFrom:Wen Xue <mr.x.wen@xxxxxxxx>Date:Thu, 17 Oct 2013 22:21:13 +0800List-Archive:<http://lists.mcgill.ca/scripts/wa.exe?LIST=AUDITORY>Sorry for self-advertisement - Wen X. and M. Sandler, "Sinusoid modeling in a harmonic context," in Proc. DAFx, Bordeaux, 2007. This was designed to handle stiff string inharmonicity (as in the piano) but it's trivial to downgrade it for perfect harmonics. The idea was that each harmonic observed with a small or large error provides some more or less information on the pitch. The more harmonics you have the more precise you can pin your f0 down. So it's how many harmonics you use that matters, not how many you miss or ignore. Xue -----Original Message----- From: Alain de Cheveigne' Sent: Thursday, October 17, 2013 5:20 PM To: AUDITORY@xxxxxxxx Subject: Re: [AUDITORY] pitch Here's the recipe: (1) estimate the period with subsample resolution (e.g. with Praat or YIN), (2) interpolate the signal over a period interval to an integer number of samples, (3) apply the Digital Fourier Transform (DFT). The coefficients of the DFT give the amplitude and phase of each harmonic. These values are exact if the signal is purely periodic. Optionally, if the signal is noisy, you might want to average the complex DFTs of several periods (or equivalently, average the waveforms of the periods before applying the DFT). Alternatively, you might prefer to average the power spectra of those periods, and take the square root to get the RMS amplitude spectrum (similar to the Welch method). The choice between these two options depends on which aspects of the non-stationary signal you want to average out. The period interval signal is not windowed before the DFT. If speed were an issue you might interpolate to a power of two and use FFT to calculate the DFT. Various methods are available for interpolation, the best choice depends on your exact needs. For a first approximation, simple linear or quadratic interpolation might suffice. Alain On 16 Oct 2013, at 15:16, herzfeld <herzfeld@xxxxxxxx> wrote: > Can anyone point me to a method which takes as input a signal having a > number of harmonics and computes each harmonic as frequency, amplitude and > pitch even in the absence of some of the partials ? > > Fred > ------------------- > > Fred Herzfeld, MIT class of 1954 > 78 Glynn Marsh Drive # 59 > Brunswick, Ga. 31525 > USA > > tel: (912) 262-1276 > Web: http://alum.mit.edu/www/herzfeld (not up yet)

This message came from the mail archive

/var/www/postings/2013/

maintained by: DAn Ellis <dpwe@ee.columbia.edu>

Electrical Engineering Dept., Columbia University