大連經(jīng)濟(jì)技術(shù)開發(fā)區(qū)第一中學(xué) 徐琦喆
基于傅立葉變換的樂音分析和生成
大連經(jīng)濟(jì)技術(shù)開發(fā)區(qū)第一中學(xué) 徐琦喆
人類聽覺能聽到樂音、噪音等聲音,樂音是一種較和諧的聲音。樂音作為一種周期性信號(hào),時(shí)時(shí)刻刻地存在于人們的生活當(dāng)中。并且隨著計(jì)算機(jī)的廣泛深入應(yīng)用,通過(guò)研究這種信號(hào)我們可以合成我們需要的電子音樂等等。在本文中主要分析通過(guò)傅立葉方法來(lái)研究樂音。對(duì)原信號(hào)使用離散傅立葉變換研究樂音的組成原理,并運(yùn)用離散傅立葉逆變換進(jìn)行音樂的生成?;诟盗⑷~方法,我們不僅分析音樂的組成,也提出一種利用計(jì)算機(jī)生成樂音的思路。
信號(hào)分析;信號(hào)生成;離散傅立葉變換
人類聽覺可以聽到的聲音包括樂音、噪音等等,而樂音是一種相對(duì)噪聲來(lái)說(shuō)比較和諧的聲音。而樂音是有樂器的周期性震動(dòng)發(fā)出聲波形成的,而聲波就可以用信號(hào)來(lái)描述。
所謂信號(hào),就是隨時(shí)間變化的函數(shù)。而樂音明顯是一種周期性信號(hào),所以我們用傅里葉變換的方法去研究樂音的規(guī)律,并遵循這種規(guī)律去合成我們想要的電子音樂。
在接下來(lái)的文章中會(huì)對(duì)樂音產(chǎn)生的基本原理、分析信號(hào)的實(shí)驗(yàn)方法、得到的實(shí)驗(yàn)結(jié)果進(jìn)行分析。
人類聽覺感受到的聲音大體上可以劃分為噪音、語(yǔ)音、樂音……幾種類型。在樂音中用通訊與電子技術(shù)的術(shù)語(yǔ)解釋就是周期信號(hào)頻率隨時(shí)間節(jié)奏變化的一種表述。樂譜上的每個(gè)音符表達(dá)了此時(shí)此刻規(guī)定出現(xiàn)的信號(hào)頻率和持續(xù)時(shí)間。
在樂譜中我們用大寫英文字母C D E F G A B表示每個(gè)音的音名,當(dāng)指定某一音樂時(shí),它對(duì)應(yīng)固定的基波信號(hào)頻率。在圖中表示出鋼琴鍵盤結(jié)構(gòu),我們可以通過(guò)計(jì)算機(jī)得到每個(gè)琴鍵對(duì)應(yīng)的基波頻率值。
樂音的基波對(duì)應(yīng)為每一個(gè)音名,而樂音諧波則影響著音色。各種樂器發(fā)出fA1 = 440Hz的樂音,在人聽覺中會(huì)有明顯差異,這是由于諧波成分有別,頻譜結(jié)構(gòu)各異。在電子樂器制造時(shí),應(yīng)該盡力模仿實(shí)際樂器的諧波結(jié)構(gòu),以達(dá)到逼真的音樂效果。
最后我們要對(duì)音調(diào)的持續(xù)時(shí)間進(jìn)行分析每個(gè)音調(diào)都可以用連續(xù)的一段正弦信號(hào)并帶有一小段靜音(停頓)來(lái)表示。每個(gè)音調(diào)的持續(xù)時(shí)間取決于它是全音符、二分音符……而每個(gè)音符之后的停頓時(shí)間應(yīng)該是相同的,不隨音符的長(zhǎng)度而變化。
接下來(lái),我們會(huì)用傅立葉變換和傅立葉級(jí)數(shù)分析和生成音樂,傅里葉方法把時(shí)域的信號(hào)在頻域展現(xiàn)出來(lái),也就是說(shuō)在我們直觀觀察信號(hào)的時(shí)域轉(zhuǎn)換到表征每個(gè)頻率分量強(qiáng)度的頻域上來(lái)。通過(guò)這樣的轉(zhuǎn)換,不僅信息沒有丟失,還把我們更需要的特征展現(xiàn)出來(lái)。
基本思路是我們需要先將原信號(hào)傅里葉變換保留重要頻譜,即基波分量和各次諧波分量,濾除掉其他,這也是我們構(gòu)造電子音樂的基本思路。
而我們的樂音信號(hào)在理想情況下也是周期信號(hào),所以也可以通過(guò)傅立葉級(jí)數(shù)可以轉(zhuǎn)化為正弦函數(shù)和余弦函數(shù)疊加的形式。
在研究分析傅立葉變換與語(yǔ)音的關(guān)系前我們應(yīng)首先了解并掌握簡(jiǎn)單的音樂合成。我們根據(jù)某段音樂的簡(jiǎn)譜和“十二平均律”計(jì)算出該片段中各個(gè)樂章的頻率,并在MATLAB中生成幅度為抽樣頻率為8kHz的正弦信號(hào)表示這些樂音。用sound函數(shù)播放每個(gè)樂音,最后用這一系列樂音信號(hào)拼出音樂片段,感受合成后的音樂。
接著我們應(yīng)先通過(guò)傅立葉變換分析音樂。我們用原始音樂和我們基于信號(hào)處理方法生成的音樂作比較,它們的抽樣率都是8kHz。下面,我們用wavread函數(shù)載入第一段信號(hào)的文件,并聽取播放出的音樂,感受播放出的效果怎么樣。除此之外,我們接著研究一下這段音樂的基頻是多少,是哪一個(gè)音調(diào)。并且用傅立葉級(jí)數(shù)或變換的方法分析它的諧波分量是多少。
最后,在我們了解了如何簡(jiǎn)單的合成音樂和用傅立葉變換分析樂音后,我們要運(yùn)用傅立葉級(jí)數(shù)合成音樂。我們能生成出用某種樂器彈奏某段音樂的信號(hào)。我們運(yùn)用之前計(jì)算出的傅立葉級(jí)數(shù)試著在樂音信號(hào)中加入一些諧波分量,我們可以感受一下音樂是否更有厚重感,是否像那個(gè)樂器真實(shí)演奏出的聲音。
我們選取某個(gè)音樂的片段,在合成并聽完音樂后,我們發(fā)現(xiàn),如果僅用MATLAB形成樂音信號(hào)并將信號(hào)拼接得到的音樂是可以準(zhǔn)確辨別音高的,并且每?jī)蓚€(gè)音之間沒有間斷,聽不出拍的感覺。正因?yàn)槭沁@樣得到的聲音顯然不是自然發(fā)出的,而是“人工制造”的。
當(dāng)我們用wavread函數(shù)載入樂音信號(hào)后從整體的波形來(lái)看,音符的混疊更加充分,每個(gè)音之間的界限并沒有那么清晰;它的包絡(luò)更加寫實(shí),長(zhǎng)短不一的指數(shù)衰減;當(dāng)我們看到局部放大的波形,聲音中混有非線性諧波和噪音,真實(shí)的聲音都會(huì)具有這些,但是剛才僅通過(guò)MATLAB等合成并拼接得到的合成音樂沒有這些分量,是十分規(guī)整的波形,因此合成的音樂與真實(shí)的音樂相差較大。
分析諧波分量時(shí),簡(jiǎn)單的方法是近似地取出一個(gè)周期求傅立葉級(jí)數(shù),但是這樣求得的答案顯然是不準(zhǔn)確的,因?yàn)橐呀?jīng)發(fā)現(xiàn)基音周期不是整數(shù)。而用復(fù)雜的方法是對(duì)整個(gè)信號(hào)求傅立葉變換,但是會(huì)發(fā)現(xiàn)無(wú)論如何提高頻域的分辨率,也得不到精確的包絡(luò)。在其中用的方法是增加時(shí)域的數(shù)據(jù)量,也就是從少到多的觀察周期,依次來(lái)分析它的諧波量。
下面如圖,延擴(kuò)不同周期,基頻不變,各級(jí)傅立葉級(jí)數(shù)比例不變,但頻譜更加突出。不過(guò)這得益于波形幾乎為整數(shù)周期。
我們通過(guò)計(jì)算的傅立葉級(jí)數(shù)再次完成對(duì)該樂曲的合成和加工,但是得到的音樂并不是很像,其中是由于吉他的泛音并不完全相同。
如果想要將音樂相似度更大一點(diǎn),可以將泛音提取更多,更準(zhǔn)確;并且在其中引入類似噪聲之類的東西以增加真實(shí)性;另外吉他有共鳴箱,我們可以引入類似的模型。
傅里葉方法是研究樂音組成原理的有效方法,也是利用計(jì)算機(jī)構(gòu)造電子合成樂音的有效工具。其中,由于計(jì)算機(jī)中存儲(chǔ)的都是離散化之后的信號(hào),所以此處我們使用離散傅里葉變換。
在研究樂音組成原理,我們對(duì)原信號(hào)使用傅里葉變換方法,并提取針對(duì)基波和諧波對(duì)應(yīng)的頻譜,發(fā)現(xiàn)各個(gè)頻譜的總體幅度決定其音量,而各個(gè)頻譜幅值的相對(duì)比例由發(fā)出聲音的樂器種類決定。
在生成音樂過(guò)程中,我們需要用的離散傅里葉逆變換,也就是由給定的音符和持續(xù)時(shí)長(zhǎng)自動(dòng)生成樂音信號(hào)波形,并且通過(guò)這種方法能生成的電子音樂和真實(shí)樂音符合度很高。
綜上,我們基于離散傅里葉變化和離散傅里葉逆變換,不僅對(duì)樂音組成原理進(jìn)行了詳細(xì)的闡述,也提出了一種利用計(jì)算機(jī)生成樂音的思路。
[1]易昆南,李慧,趙澍源,等.讓枯燥無(wú)味的數(shù)學(xué)變得“有趣、有味、有惑”——Matlab中的音樂合成[J].實(shí)驗(yàn)室研究與探索,2014,33(6): 114-117.
[2]楊若芳,項(xiàng)頂.基于Matlab實(shí)現(xiàn)音樂識(shí)別與自動(dòng)配置和聲的功能[J].自動(dòng)化與儀器儀表,2011(1):126-128.
[3]程美芳.鋼琴音色識(shí)別與電子合成系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2014.