敬曉親
(四川音樂學(xué)院,四川 成都 610021)
19世紀(jì)末調(diào)性的逐漸瓦解,開啟了20世紀(jì)初大批作曲家的“求索之路”。大量新“關(guān)鍵詞”也相繼出現(xiàn):如表現(xiàn)主義、十二音序列主義、新古典主義、民族主義、復(fù)雜主義、偶然音樂、具體音樂、頻譜音樂……多元化的背后,是作曲家們對(duì)每個(gè)音樂元素的極致追求。20世紀(jì)下半葉計(jì)算機(jī)技術(shù)的飛速發(fā)展,大批作曲家們開始意識(shí)到計(jì)算機(jī)程序在音樂寫作、分析上的巨大輔助能力。21世紀(jì)的今天,鮮有不使用計(jì)算機(jī)輔助軟件創(chuàng)作的作曲家。
OpenMusic(下文簡(jiǎn)寫為OM)是一款非常優(yōu)秀的計(jì)算機(jī)音樂輔助軟件。雖然它的出現(xiàn)與頻譜音樂有著深遠(yuǎn)的淵源(沒有頻譜樂派就沒有OpenMusic①),但限于篇幅,本文不會(huì)過多對(duì)頻譜音樂展開討論,將重點(diǎn)介紹OM在音樂創(chuàng)作時(shí)可能實(shí)現(xiàn)的輔助功能。
20世紀(jì)70年代開始,以杰勒德·格里賽為首的五位法國(guó)作曲家共同發(fā)表了《L`tineraire》(意為“旅程”),并成立“旅程”室內(nèi)樂團(tuán),聲明要通過傳統(tǒng)方式創(chuàng)造新的音響。1979年于格斯·迪富特第一次以書面形式描述他們的音樂為“頻譜音樂”(Spectral Music)。從其名字“頻譜”可以感受到,頻譜樂派非常關(guān)注聲音的微觀結(jié)構(gòu)如:頻率、振幅、包絡(luò)、泛音等。正如自然科學(xué)一樣,想要仔細(xì)觀察事物的微觀結(jié)構(gòu),都需要精良的“工具”。
為了紀(jì)念于1998年去世的頻譜學(xué)派重要代表人物格里賽,法國(guó)蓬皮杜國(guó)家聲學(xué)與音樂協(xié)作研究中心IRCAM②根據(jù)頻譜作曲技法而研發(fā)了OM這一款軟件。它是一款音樂創(chuàng)作與分析的交互式圖形環(huán)境,主要以CLOS(Common Lisp Object System)語言開發(fā)編寫,靠節(jié)點(diǎn)進(jìn)行連接編程。雖然他的出現(xiàn)與頻譜音樂有著直接的聯(lián)系,但因其強(qiáng)大聲音素材處理能力,使其成為很多頻頻音樂流派以外的作曲家們創(chuàng)作時(shí)的必備輔助程序。
雖然很多計(jì)算機(jī)軟件都能實(shí)現(xiàn)OM的部分功能,但像OM這樣能直觀的以圖像形式顯示聲音的樂譜、頻譜、波形等的軟件并不多見。而它的最大優(yōu)勢(shì)是脫胎于頻譜音樂——用聲音的微觀結(jié)構(gòu)去“結(jié)構(gòu)”音樂的宏觀結(jié)構(gòu)。如:它可以很容易的提取一個(gè)樂音的某一段泛音列,且這段泛音列可以精確到1/16音;它可以分析一段音樂的波形圖并將其轉(zhuǎn)換為音高;他也可以提取一個(gè)樂器的發(fā)聲包絡(luò)曲線并將其轉(zhuǎn)換成音高;只需要一個(gè)物件,它就能算出一個(gè)9音集合的AIS③;他甚至還支持利用外部設(shè)備,通過OSC④無線方式進(jìn)行互動(dòng)音樂創(chuàng)作……
作為一款開源免費(fèi)軟件,OM支持使用者自由開發(fā)、添加擴(kuò)展庫(kù),目前PC和MAC版本都已經(jīng)更新到6.14。
O M的工作界面非常簡(jiǎn)潔,下圖左區(qū)域是O M的工作窗(WorkSpace),所有的程序設(shè)計(jì)都在這個(gè)區(qū)域完成。工作窗下方是其反饋監(jiān)視窗(OM Listener),所有反饋信息都會(huì)出現(xiàn)的這個(gè)區(qū)域,如計(jì)算結(jié)果,錯(cuò)誤輸入等。其它功能窗口,如擴(kuò)展庫(kù)(Library)、MIDI軟件調(diào)音臺(tái)(MIDI Mixer)等在OM頂部菜單欄Windows里。在工作窗內(nèi)右擊,可以建立新的程序(patch)、模塊(maquette)、Lisp語言功能(Lispfunction)等。
OM是一款節(jié)點(diǎn)式編程軟件,各物件⑤之間靠連接各輸入輸出節(jié)點(diǎn)來形成邏輯。恰似模擬時(shí)代聲音硬件設(shè)備間的電線連接一樣,既直觀又易于理解。在工作窗內(nèi)右擊建立一個(gè)patch,雙擊patch打開程序內(nèi)部,進(jìn)行各個(gè)物件的建立、編輯與連接。
OM里可以實(shí)現(xiàn)幾乎所有的數(shù)學(xué)計(jì)算與判斷,如:加減乘除、正/余弦、指數(shù)/對(duì)數(shù)、數(shù)組反轉(zhuǎn)、大小判斷、if條件判斷等。圖一頂部為加減乘除四個(gè)物件。圖片中部為OM的乘法運(yùn)算:在程序內(nèi)部的空白處雙擊,彈出物件建立的小窗口,在窗口中輸入“OM*”即可創(chuàng)建一個(gè)乘法物件。乘法物件因其數(shù)學(xué)要求,會(huì)有兩個(gè)輸入節(jié)點(diǎn)和一個(gè)輸出節(jié)點(diǎn),也就是的模式。Shift+左擊乘法物件的左輸入端和右輸入端,會(huì)出現(xiàn)兩個(gè)數(shù)字輸入框,在數(shù)字輸入框里輸入需要乘法計(jì)算的兩個(gè)數(shù)值。選中乘法物件,按運(yùn)行鍵字母“V”,就會(huì)在監(jiān)視窗里顯示出計(jì)算結(jié)果。如圖一中69*100,會(huì)在監(jiān)視窗中顯示出6900的結(jié)果。在程序空白處雙擊,新建框中輸入“mc->f”,得到一個(gè)可以將MIDI音符數(shù)字轉(zhuǎn)換為頻率的物件。將乘法物件的輸出節(jié)點(diǎn)和“mc->f”的輸入節(jié)點(diǎn)相連接,便可以將乘法計(jì)算的結(jié)果(將此結(jié)果作為MIDI協(xié)議⑥的音高值)轉(zhuǎn)換為頻率值。圖一中乘法結(jié)果6900轉(zhuǎn)換為頻率后為440Hz,這就表示6900這個(gè)數(shù)值在OM中代表MIDI標(biāo)準(zhǔn)音高的國(guó)際標(biāo)準(zhǔn)音A。
1991年推出的general MIDI標(biāo)準(zhǔn)中,把中央C(C4⑦)的音高協(xié)定為60,每增加一個(gè)半音數(shù)值便增加1,國(guó)際標(biāo)準(zhǔn)音A則為69。OM作為一款頻譜音樂輔助軟件,其優(yōu)勢(shì)在于他能更精確的洞察音樂的微觀結(jié)構(gòu),所以O(shè)M里的MIDI音高被規(guī)定為是正常MIDI標(biāo)準(zhǔn)的100倍,即以6000代表中央C。這樣做的好處是可以把一個(gè)正常MIDI協(xié)議的一個(gè)半音細(xì)分為100份,正好和音分cent概念相對(duì)應(yīng),在表現(xiàn)微分音時(shí)有相當(dāng)大的優(yōu)勢(shì),如:6000代表C4,6050表示為升1/2音的C4,6100為升C4。
自泛音列被發(fā)現(xiàn)以來,它在音樂中的意義就非比尋常,尤其在頻譜音樂中。OM不但可以很容易生成泛音列,它還支持播放、顯示精確到1/16音,而在其他音樂輔助軟件中,這并不是件容易的事:
圖二中展示了兩種不同的方法生成樂音的泛音列,精確到1/4音。左邊為方法一,右邊為方法二。把各參數(shù)連接到方法一“harm-series”物件的各個(gè)輸入節(jié)點(diǎn),即可得到泛音列。方法二的“mypatch”為子程序⑧,子程序里內(nèi)容見圖右上角。它的運(yùn)算結(jié)果同方法一。子程序上方有4個(gè)輸入節(jié)點(diǎn)分別表示:0樂音的基音、1泛音列(諧波)⑨的起始序號(hào)、2泛音列的結(jié)束音序號(hào)、3泛音列諧波序號(hào)的間隔數(shù)。如果想要得到以C2為基音,從諧波序號(hào)1開始,序號(hào)12結(jié)束的基數(shù)次諧波,則將子程序上面的輸入節(jié)點(diǎn)開始序號(hào)“begin”設(shè)置為1,結(jié)束序號(hào)“stop”設(shè)置為12,諧波間隔“step”設(shè)置為2即可。
綜上則圖二邏輯為:note物件輸出一個(gè)C2作為基音,基音連接到harm-series物件(或方法二的子程序)的第一輸入節(jié)點(diǎn)。給harmseries物件(或子程序)的其他輸入節(jié)點(diǎn)輸入限定參數(shù)——顯示第1-12號(hào)諧波,諧波序號(hào)間隔為1。最后將harm-series物件(或子程序)的輸出節(jié)點(diǎn)連接到“chord”和弦物件的音高輸入節(jié)點(diǎn)(第二節(jié)點(diǎn)),選擇“chord”物件按運(yùn)行鍵“V”即可按照設(shè)定生成泛音列。
當(dāng)然,上述方法是得到的是樂音的自然泛音。在OM里想要得到人工泛音同樣容易:只需在圖二子程序中加入指數(shù)“om^”物件,當(dāng)其次方值為1時(shí),為自然泛音,不等于1時(shí)為收縮和拉伸后的人工泛音,如圖三。
如果想要隨機(jī)的得到一個(gè)4音列,且這個(gè)4音列還具有某種內(nèi)在關(guān)聯(lián),再得到4音列的移位、倒影、逆行、逆行倒影,在OM里同樣很容易實(shí)現(xiàn):
僅兩個(gè)步驟,我們就從泛音列里提取出了一個(gè)4音列(有內(nèi)部關(guān)聯(lián)的4音列)。下面是OM里音列的4種形態(tài):
圖五“倒影”邏輯為:1、提取4音列第一個(gè)音,然后用x->dx算出后面每?jī)蓚€(gè)音的間距;2、用乘法物件使音列相鄰音程間距變?yōu)樨?fù)數(shù),再用dx->帶入原4音列,則形成了以第一個(gè)音為首的向之前相反方向(負(fù)數(shù)方向)的間距——倒影。
在OM里還可以按指定算法程序生成旋律,即算法作曲,如圖六。
圖六邏輯:繪制ADSR線型圖表并提取其數(shù)據(jù),生成音高?,與d隨機(jī)得到的節(jié)奏型組合,形成旋律1;用f物件加載音頻,并用g提取音頻采樣點(diǎn)數(shù)據(jù)。i導(dǎo)入圖表,j生成音高,與d節(jié)奏組合形成旋律2。
在此,我們用兩種方法生成了兩條簡(jiǎn)單的算法完成的旋律,而在OM里我們完全可以做到更加精妙的算法設(shè)計(jì),如旋律片段的音高來源于上節(jié)中的4音列,而4音列音高則來自于前文敘述中生成的泛音列的前16階諧波里的基數(shù)次諧波的隨機(jī)。節(jié)奏方面不但可以隨機(jī),還可以按時(shí)值?從小到大或從大到小與音符相組合,我們可以用OM完全生成梅西安的整體序列作品《時(shí)值與力度模式》?。如果我們?cè)賹?duì)音符力度、演奏法進(jìn)行設(shè)計(jì),一首完全由算法生成的音樂,就有了更多的“內(nèi)涵”。
音集集合方面OM也有優(yōu)異的表現(xiàn)。圖七中左右上方兩個(gè)圓圈是兩個(gè)三音集合(左右為對(duì)稱結(jié)構(gòu))。通過OM中Functions/MathTools中的Circle系列物件可以方便的對(duì)集合進(jìn)行各類操作,如圓形可視化、AIS計(jì)算、補(bǔ)集計(jì)算等。
OM中甚至可以利用OSC協(xié)議進(jìn)行交互式音樂創(chuàng)作:
OSC-receive物件會(huì)以廣播的形式接受來自同一局域網(wǎng)發(fā)來的信息(可以同時(shí)接收到多臺(tái)設(shè)備)。很多軟件都支持OSC,如Max/Msp、Touch OSC(手機(jī)app)等。圖九為筆者設(shè)計(jì)的簡(jiǎn)易TouchOSC界面,它可以給圖八的OM程序發(fā)送數(shù)字、xy軸信息和手機(jī)陀螺儀信息。
如此強(qiáng)大、開源的軟件,筆者就算寫上一本書也可能只是“初窺其表”。作為一款計(jì)算機(jī)輔助軟件,OM易于操作、邏輯清晰。不光有所有物件使用規(guī)則和參數(shù)設(shè)置的官方參考文檔,還有循序漸進(jìn)的Tutorials patch。甚至還包括在線論壇和各種官方的強(qiáng)大擴(kuò)展包。它在作曲家分析和創(chuàng)作音樂時(shí),可以為作曲家?guī)氋F的聲音素材,完成復(fù)雜的邏輯運(yùn)算。
最為難得的是,OM輔助作曲家完成素材相關(guān)處理工作時(shí),它始終是“工具姿態(tài)”,并不會(huì)束縛作曲家的思想,而創(chuàng)作本也該始于素材整理完畢之時(shí)。
現(xiàn)在看來,頻譜音樂的魅力確實(shí)無可厚非——試想一部管弦樂作品的音高線條,是一個(gè)獨(dú)特樂器反轉(zhuǎn)后的波形圖、一個(gè)帶合唱的大型交響樂團(tuán),用2分鐘的時(shí)間去模擬一個(gè)單簧管2秒內(nèi)的聲音頻譜變化……這些有趣的聲音背后,都需要輔助工具的支持。至少它會(huì)幫助我們節(jié)省大量的時(shí)間,他可能還會(huì)給我們?cè)诜治鲎髌窌r(shí),提供一些獨(dú)特的視角。
注釋:
① 吳粵北.基于算法的頻譜作曲技法[J].黃鐘(武漢音樂學(xué)院學(xué)報(bào)),2011,04:3-10.
② IRCAM:Institut de Recherche et Coordination Acoustique/Musique。是法國(guó)著名的聲音、聲學(xué)、計(jì)算機(jī)音樂、計(jì)算機(jī)軟件等研究中心。
③ AIS:集合的相鄰音程序列。
④ OSC:Open Sound Cotrol,具體參見網(wǎng)頁:https://en.wikipedia.org/wiki/Open_Sound_Control
⑤ 物件:即Object,實(shí)現(xiàn)一個(gè)功能的最小結(jié)構(gòu),如:加法物件“OM+”。
⑥ MIDI協(xié)議:見https://zh.wikipedia.org/wiki/MIDI
⑦ MIDI標(biāo)準(zhǔn)為:scienti fi c,MusicXML,and others.
⑧ 子程序:程序中的次級(jí)程序,也叫subpatch.
⑨ 泛音列即各階次諧波的集合——基音的整數(shù)倍。
⑩ 算法作曲:基于算法法則、規(guī)則系統(tǒng)等為技術(shù)手段的作曲體系。詳細(xì)概念及方法參見:倪朝暉.算法作曲理論與實(shí)踐[M]重慶.西南師范大學(xué)出版社.2015
? ADSR:樂器發(fā)聲時(shí)的幾個(gè)瞬間階段:建立、衰減、保持、釋放。把樂器瞬間的發(fā)音狀態(tài)提取轉(zhuǎn)換為旋律音高,這種做法正是頻譜樂譜的常用做法——微觀素材的宏觀化。
? 如:32分音符為最小單位,設(shè)為1,依次為2、3、4……
? 梅西安創(chuàng)作于1949年,是歐洲第一首整體序列作品。