Probably a dumb question but i just want to make sure... you need this
to happen in real time right?

If not, you could perhaps delay the original signal so that you had
the right pitch discovered at the right time.

On Fri, Feb 18, 2011 at 2:24 PM, Sascha Eversmeier <s.eversme...@gmx.de> wrote:
> Dear list people,
>
> I'm used to doing auto correlation for pitch detection, but right now, I've
> got to find a way for doing very fast and half-reliable algorithm for
> periodic signals.
> I'd like to stick to time-domain approaches here, but naive zero crossing is
> a no-go, as I might have to face plenty of harmonics and noise.
> So I thought about using steep, adaptive bandpass filters (regular biquads).
> The idea was to feed an evvelope follower with the filter output (very short
> env actually), and move the center freq up- & downwards, where the inc/dec
> is directly proportional to the envelope amount. The 'louder', the less
> movement occurs, until everything finally stands still. Theoretically, the
> thing thereby should sync itself to any incoming pitch.
>
> It does work to some extend, but I think I'm still missing something. I can
> either have it to sync fast to the pitch, but then it's not very accurate.
> Or, it's accurate but slow (like a portamento). Also, when the incdec steps
> are too coarse, the filter steps 'over' the actual frequency and thereby
> bounces back & forth.
>
> I can imagine a slow action being ok for feedback cancelling or such. But
> would you guys say the technique is capable to detect pitch in a fast way?
>
> I'm currently looking at section 4) on this page:
> https://ccrma.stanford.edu/~pdelac/154/m154paper.htm
>
> What I don't get right: When doing a convergence test (or: in my case,
> deriving an envelope), how does one derive a filter frequency from it? Can
> someone point me to more precise literature on that (couldn't find it)? I'm
> currently trying to travel up & down like
> inc = 1 + factor * (1 - filter_envelope);
> where 'factor' changes according to the direction.
> I don't think it's the best thing to do. How can I do better?
>
> I also thought about having two filters, cross-coupled, perhaps with
> opposite direction. Would that work?
>
> Thanks for any brainstorming over this,
> Sascha
> --
> dupswapdrop -- the music-dsp mailing list and website:
> subscription info, FAQ, source code archive, list archive, book reviews, dsp
> links
> http://music.columbia.edu/cmc/music-dsp
> http://music.columbia.edu/mailman/listinfo/music-dsp
>
--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp

Reply via email to