0
$\begingroup$

This question already has an answer here:

I try to develop a guitar game in android platform.

And I need to do the real-time pitch detection of guitar chord.

I will get the input from the microphone, and then analyze the input (the input playing which kind of guitar string/chord).

I find two kinds of method that I can use, one is YIN, another one is FFT.

Which method can get better performance and exact result?

$\endgroup$

marked as duplicate by Matt L., Marcus Müller, hotpaw2, MBaz, Peter K. Jan 15 '17 at 22:02

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • $\begingroup$ chords are, how shall we say?, a female-canine. dunno how melodyne does it. $\endgroup$ – robert bristow-johnson Jan 15 '17 at 6:19
  • 1
    $\begingroup$ What exactly do you mean by "pitch detection of guitar chord"? Pitch detection is the detection of a single pitch, the other task would be "chord identification". The latter is immensely difficult and you would also need to define what it exactly is that you want to identify: "just" the type of chord (e.g., an E chord), or the exact inversion, i.e., where and on which strings was that E chord played. $\endgroup$ – Matt L. Jan 15 '17 at 9:06
  • $\begingroup$ I will get the input from the microphone, and then analyze the input (the input playing which kind of guitar string/chord), How can I do it? @Matt L. $\endgroup$ – paul9508 Jan 15 '17 at 14:26
  • $\begingroup$ "String" or "chord", that is the question! $\endgroup$ – Matt L. Jan 15 '17 at 16:42
  • $\begingroup$ That mean chord estimation is nearly imposible to do it? @Matt L. $\endgroup$ – paul9508 Jan 15 '17 at 18:23
0
$\begingroup$

Your question is ambiguous. Chord, pitch and frequency detection/estimation are very different things. Bare FFT magnitudes are really bad at guitar pitch modeling. YIN is a better monophonic pitch estimator. Polyphonic chord estimation is vastly more difficult, and may or may not even be possible, depending on your input data or time/pitch accuracy requirements (exactly what is your "exact result"?) plus any computational limitations ("real time" latency requirements, CPU performance/cores/GPUs available, etc.)

$\endgroup$
  • $\begingroup$ If I try to do polyphonic chord estimation, what kind of method/algorithm can possible to do it? @hotpaw2 $\endgroup$ – paul9508 Jan 15 '17 at 18:05
  • $\begingroup$ See: cs.tut.fi/~klap/iiro and other research papers published over at the en.wikipedia.org/wiki/… conference. $\endgroup$ – hotpaw2 Jan 15 '17 at 18:17
  • $\begingroup$ I will go to read the paper, Thank you for your answer. $\endgroup$ – paul9508 Jan 15 '17 at 18:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.