我已經研究過快速傅里葉變換,並且還沒有能夠看到一種方法來解碼來自一個信號的多個頻率。是否有辦法分解fft計算的結果,以便我們可以看到和絃中的單個音高,或者可以根據fft的結果計算最可能的和絃?多音高檢測:FFT還是其他?
如果不是,還有另一種音高檢測方法可以檢測現場設置中的多個音高嗎?
編輯:我試圖做一次不超過六個音高,因爲我正在用吉他寫軟件;在節目使用者有七絃吉他的情況下,它需要能夠最多拾取七個音高。
既然如此,是一個能夠從單個麥克風信號處理這個問題的FFT(或其他方法),還是必須製作一個吉他拾取器來逐個讀取每個字符串?
多少音調或正弦波是我們在原始信號在說什麼?如果它只是少數(例如DTMF信號中的2個核心音),則FFT可能工作。只要搜索高峯。否則,對於音樂而言,這通常被認爲是計算機科學和信號處理中的難題。您可以在「自動音樂轉錄」上進行互聯網搜索,並且您可能會發現一些嘗試執行此操作的軟件程序或代碼。 – selbie 2012-03-08 06:50:02
有一個名爲Melodyne的着名軟件可以處理複雜的聲音。 – cmannett85 2012-03-08 07:45:54
這個問題可能重複:http://stackoverflow.com/questions/4337487/chord-detection-algorithms/4339225#4339225 – hotpaw2 2012-03-08 08:22:25