title: Real time pitch detection
body: <p>I'm trying to do real time pitch detection of a users singing, but I'm running into alot of problems. I've tried lots of methods, including FFT (<a href="https://stackoverflow.com/questions/1351381/fft-problem-returns-random-results">FFT Problem (Returns random results)</a>) and autocorrelation (<a href="https://stackoverflow.com/questions/1353368/autocorrelation-pitch-detection-returns-random-results-with-mic-input">Autocorrelation pitch detection returns random results with mic input</a>), but I can't seem to get any methods to give a good result. Can anyone suggest a method for real-time pitch tracking or how to improve on a method I already have? I can't seem to find any good C / C++ methods for real time pitch detection.</p>
  
  <p>Thanks,</p>
  
  <p>Niall.</p>
  
  <p>Edit: Just to note, i've checked that the mic input data is correct, and that when using a sine wave the results are more or less the correct pitch.</p>
  
  <p>Edit: Sorry this is late, but at the moment, im visualizing the autocolleration by taking the values out of the results array, and each index, and plotting the index on the X axis and the value on the Y axis (both are divided by 100000 or something, and im using OpenGL), plugging the data into a VST host and using VST plugins isn't an option to me. At the moment, it just looks like some random dots. Am i doing it correctly, or can you please point me torwards some code for doing it or help me understand how to visualize the raw audio data and autocorrelation data.</p>