예, 이것이 FFT의 전부입니다! 공급하는 데이터의 주파수 스펙트럼을 제공합니다. 어려운 부분은 앞에서 언급했듯이 구현 세부 사항입니다.
수행하려는 작업에 따라 정확하게 답변이 변경됩니다.
자신의 음악을 분석하고 싶다면 이미 소프트웨어가 있습니다. 응답을 보여주는 EQ (기본적으로 FFT)를 보거나 피치를 보여주는 "뮤직 EQ"를 얻을 수도 있습니다. 연주하는 내용을 올바른 미디 음표로 변환하는 오디오를 미디 VST로 가져올 수 있습니다. 키보드가 미디라면 VST를 건너 뛰고 미디를 직접 녹음하십시오.
FFT와 음악과의 관계를 가르치고 싶다면 Matlab과 같은 데이터를 사용하여 데이터의 FFT를 계산하는 것이 좋습니다. 그것은 wav 파일을 읽는 등의 기록 및 재생 기능이 있습니다. 이것들은 사용하기가 정말 쉽습니다. 구문을 알고 있으면 오디오를 그래프로 작성하고 모든 종류의 분석을 신속하게 수행 할 수 있습니다.
이러한 작업을 수행하기 위해 장치를 구축하려면 상당히 복잡합니다. 계산을 수행하려면 uC / dsp / fpga / etc가 필요합니다. 대부분의 인기있는 장치에는 이미 FFT 코드가 제공되므로 직접 코딩 할 필요가 없습니다 (또한 복잡합니다).
회로와 그 모든 것을 만들어야합니다. 어렵지는 않지만 경험 / 지식에 따라 시간이 오래 걸리고 학습 곡선이 가파 릅니다. 또한 최종 제품의 품질에 따라 다릅니다.
수학적으로 이상적인 음표는 기하학적 인 일련의 "기본"으로 구성됩니다.
F0이 기본 주파수라고 가정하면 대부분의 음표는 F (t) + F0 * sum (a_k e ^ (2 ^ k F0 * pi i t)) = F0 + a_1 * F1 + a_2 * F2 + 로 근사됩니다 . ...
a_k는 고주파수 F_k의 강도 일 뿐이고 F_k는 F0의 배수 일뿐입니다. 모든 k에 대해 a_k = 0이면 순수한 정현파입니다. 이것의 피치는 감지하기 쉽습니다. FFT의 최대 값을 찾으십시오. 주파수는 톤의 기본 요소 인 음표입니다.
FFT를 받으면 데이터로 끝나고 수학을 수행합니다. 기본적으로 미적분학입니다.
비교적 쉬운 일입니다.
처리해야 할 몇 가지 문제가 있습니다. 이들 모두가 "해결"된 것은 아닙니다.
대기 시간-모든 종류의 실시간 작업을 수행하려는 경우 문제가 될 수 있습니다.
여러 음표-모든 추가 고조파로 인해 음표 그룹을 결정하기가 어렵습니다. A = 440hz와 A '= 880hz를 연주하면 대부분의 고조파가 겹칩니다. A = 440hz를 쉽게 얻을 수 있지만 A '= 880hz를 얻는 것이 더 어렵습니다. 화음, 빠른 달리기 등을 생각할 때 모든 정보 (음표)를 정확하게 얻는 것이 매우 어려울 수 있습니다. 모든 것이 일반적으로 수학적으로 가능하지만 데이터 자체에는 오류와 수차가 있으며 경우에 따라 방정식이 정의되지 않습니다.
노이즈-신호의 노이즈가 의심스러운 결과를 줄 수 있습니다. 음악 노이즈가 발생하면 결과가 나빠질 수 있습니다. 그러면 더 좋은 알고리즘이 필요할 것입니다 = 시간 + 돈 + 지식.