包憶杭
多媒體電子音樂是電子音樂中跨學科融合性較強的一種類型,除了聲音還帶有視覺影像、激光、裝置等其他媒介來增強作品表現力。增強現實技術是一種將虛擬信息通過多種計算機技術手段實時渲染后與現實世界的信息有機地融合,兩種信息互為補充,從而強化人的感官體驗的技術,融合增強現實技術的多媒體電子音樂中的實際案例比較少見,但是隨著增強現實音頻、空間音頻等音頻技術的出現,在沉浸式的聯覺體驗越來越受重視,電子音樂作品創作的媒介越來越豐富。然而對于聲音創作者來說使用Cycling 74 MAX上手更快,本文通過模擬創作一個交互空間中的電子音樂,側重分析基于Cycling 74 MAX聲音創作環境下跨平臺音樂交互設計的方法,基于耳機回放條件下聲音空間定位的物理運算及數據轉換途徑,為融合增強現實技術的多媒體電子音樂作品提供一個更簡便的實現聲音聽覺定位交互的方案,希望為此類作品的創作研究與實現提供一定的參考與借鑒。
Cycling 74 MAX(簡稱MAX/MSP)是一種圖形編程工具且常用于新媒體藝術創作,特別是在音樂創作和聲音創作方面。Cycling 74 MAX通過簡便的圖形編程,極大地方便了電子音樂和聲音設計創作者探索電子音樂的可能性甚至完成視覺的創作。UNITY是常見的3D內容創作和運行平臺,許多增強現實游戲也是通過UNITY制作出來,同時UNITY也可以通過基礎的C#編程語言來提取數據。在本研究中將使用UNITY來搭建模擬交互空間,在這個空間原點上放置全向點聲源,Cycling 74 MAX則負責電子音樂的創作和聲音處理。
本研究中Cycling 74 MAX對聲音定位的處理思路決定了從UNITY中獲取哪些數據,思路大致如下:1.隨著聲源與聽者的距離增加響度衰減,同時聽者聽到頻率也會有相應的損失;2.聽者相對于聲源的移動產生的聲音多普勒效應;3.聲源相對于聽者的聲像根據聽者朝向與聲源的角度得出4.在前后聲像位置上采用頻率衰減來區分。
通過上述思路得出主要所需的數據如下:聽者在點聲源為原點建立的空間坐標系中的位置、聽者的移動速度、聽者的朝向以及這個朝向與聲源點形成的夾角。其中能通過基礎的C#腳本直接從UNITY中提取的數據有:聲源坐標(原點)(0,0,0),聽者的坐標(X,Y,Z),聽者的朝向(聽者在自身為原點的三維坐標系中的Z軸正方向)。其中聽者朝向與聲源點形成的夾角并不能直接用從屬性數據中提取,但是可以提取到聽者朝向與原點三維坐標軸Z軸形成的角度“eulerAngles.y”、聽者坐標與原點相連的向量與X軸的夾角,這兩個數據可以用來計算出我們前面提到的夾角,計算方式于后文闡述。值得注意的是聽者朝向與原點坐標軸Z軸形成的角度“eulerAngles.y”并不在物件的“transform.rotation”里,UNITY腳本中的變量 “transform.rotation” 是一個四元數,有x、y、z、w四個參數,這四個參數和UNITY面板中看到的物體的旋轉角度“Rotation”沒有直接關系,按度數存儲的旋轉角度存儲在“eulerAngles”屬性中。因此,如果你想直接調用“transform”中的旋轉角度,那么需要在C#中寫入提取“transform.eulerAngles”。
OpenSoundControl(簡稱OSC協議)是一種網絡傳輸協議,它的及時性和靈活性使其成為任何需要在軟件或硬件兩點之間進行實時通信的解決方案。在Cycling 74 MAX中OSC協議使用“udpsend”物件配置IP地址和發送端口、“udpreceive”物件配置接收端口。UNITY中需要加載C#腳本來配置OSC協議并綁定到物件上,需要注意的是UNITY的OSC協議數據傳輸需要運行搭建的場景才能進行數據的收發。
聽者感受到的聲音響度會隨著距離變動以相當復雜的方式發生變化,現實世界中這種變化還取決于環境的溫度濕度、風速風向等因素,但本次研究是針對電子音樂聲音創作中簡便的聲音空間交互效果,所以本次研究搭建的這個虛擬的空間是一個理想可控的自由聲場,且對聲音的衰減采用類似游戲音頻設計中的曲線衰減。通過OSC協議,在Cycling 74 MAX中得倒了聽者的坐標(X,Y,Z),計算得到聽者與聲源相對距離r,模擬聲源處于自由空間,選用聲衰減公式L A(r)=LWA -20*lgr-11,以上代數式在 Cycling 74 MAX中均可以通過“expr”等Object完成運算,如圖1:通過選用這一衰減公式可以大致模擬出距離變化和聽者感受到的聲音大小變化。除此之外,在Cycling 74 MAX中設計兩個濾波器,第一個濾波器用于模擬高頻聲在空氣傳播中的吸收衰減,第二個濾波器衰減用于營造聲源位于聽者前后兩個方向時的聽覺差異。

圖1
多普勒效應在聽感上表現為:當聲源與聽者進行相對運動時,二者相對距離縮小,聽者聽到的音調變高,反之則聽到的音調變低,這種現象在現實生活中能被普遍觀察到。想要模擬這種效應還是要從物理公式出發,多普勒效應的公式如下:f1 =(V+V1)/(V-V2)*f。在上述公式中f1為聽者聽到的聲音頻率,V是聲音的速度,V1是人相對于聲源的移動速度,V2是聲源的速度,f是聲源頻率。在Cycling 74 MAX中,得到實時變化的坐標信息后可以使用“timer”物件來作為單位計時器以求得速度,“timer”可以幫助我們計算收到兩次坐標數據之間的時間間隔,如圖2:

圖2
需要注意的是:如果在timer前面的運算中有使用到“trigger”物件的話會多觸發一次“bang”到“timer”物件,使“timer”計時顯示一直為0毫秒。由此得到單位時長內相對距離的變化,從而得到了V1人的移動速度,V2聲源不可移動所以相對速度為0m/s。通過在Cycling 74 MAX中代入前述公式我們可以得出頻率變化的比值來模擬多普勒效應。
在本研究中,聽者頭部轉動這一變量是固定聲源聲像變化的參考數據,因此聲像的運算處理主要通過聽者的朝向以及這個朝向與聲源點形成的夾角A并選擇使用三角函數的特性來進行判定。正弦函數在弧度為0~π時大于0,在-π~0時小于0,角θ的正弦值如果大于0且越接近1則聲源相對于聽者像位越靠右,小于0且越接近-1則聲源相對于聽者像位越靠左。由于我們能直接從UNITY屬性中獲取的聽者朝向與原點坐標軸Z軸形成的角度β,觀者坐標與原點相連的向量與X軸的夾角α,且通過OSC傳出的是以順時針方向計算的角度,范圍是0~360,所以我們還需要經過換算才能得到角θ。具體換算過程如下圖3:

圖3
需要注意的是:Cycling 74 MAX中“expr”物件可以進行三角函數的運算,但是需要使用弧度制,因此還需要把UNITY傳出的角度制轉為弧度制再使用。得到sinθ值通過“scale”物件映射數值到“pan2”聲像控制物件上,即可完成左右聲像上的定位。前后方向上的定位還是根據三角函數的特性使用余弦函數cosθ的正負值來判定前后的聲像定位。運算具體如圖4。

圖4
由于聽者的位置是主要的交互因素,因而在電子音樂的表現上主要根據聽者相對于模擬聲源的距離遠、中、近依次分為了三個段落,整體氛圍也由聽者走向模擬聲源的過程,從寧靜和諧轉變為躁動混亂,第一個段落音樂材料為細雨聲、樹葉聲等自然聲采樣與基于自然大調音階的合成PAD音色與馬林巴琴;第二個段落音樂材料不變,但在聲音效果上進行故障化和降低采樣率的處理;第三個段落音樂材料為密集不和諧音程的律動與伐木等環境噪聲。電子音樂部分的創作在Cycling 74 MAX中主要分為音樂生成和音樂交互處理兩個部分。
在使用的聲音材料中,自然聲采樣和環境噪聲采樣為提前預錄好放入Cycling 74 MAX中的,而樂音聲部的構建和處理效果都通過圖形編程的方式完成。PAD音色的合成主要依賴“mc”多通道物件,通過給固定音階但隨機八度的多通道MIDI信息分配到相應通道數的“cycyle~”物件,形成簡易的正弦波復音堆疊形成PAD如圖5。

圖5
馬林巴琴采樣器的設計分為音序預置和采樣處理兩個部分,首先采樣馬林巴琴中央C音放入“buffer~”物件中,“buffer~”物件可以用來儲存讀取音頻文件;其次進行音序設計,在作品中馬林巴琴采樣器有兩個聲部,都通過“drunk“物件使兩個聲部播放速度不斷變化來產生一些節奏上的錯位,來讀取預先寫好的MIDI信息,之后采樣器針對馬林巴中央C音高的調整通過“transratio”物件計算音高比值來進行音高調制如圖6。

圖6
音樂交互部分除了聽者相對于聲源距離的變化產生音樂段落的變化之外,在具體階段的聲音處理效果深度上也會產生變化。主要表現在第二段中的對聲音材料進行了激降采樣率處理并把故障噪聲加入,聽者在的距離越接近中心,故障噪聲的生成越多,降低的采樣率也越多。針對故障噪聲的生成主要用兩種方式生成:一是通過模仿磁帶或者碟片故障讀取速度不穩定來模擬故障聲,這種故障聲的特點就是由于走帶速度的變化導致音高的偏移,由此可以使用“drunk”物件輸出不穩定抖動的范圍數值模擬不穩定的走帶速度,再通過“sfplay~”物件播放預置的采樣音頻素材,將“drunk”物件輸出的不穩定數值帶入“pitchshift ”命令給入“sfplay~”后可以使音頻的音高發生位移;二是通過“noise~”物件和“pink~”物件通過輸出隨機大小的噪聲。
通過前述的聲音處理運算可以在Cycling 74 MAX中實現最基本的空間視聽聯覺,如果要實現更加細致的聲音處理以貼近現實世界的聲音反饋,可以添加頭部相關傳遞函數(HRTF)的運算,以及加入擬定環境的物理因素例如溫度、濕度等。在Cycling 74 MAX還有以下幾種方式強化聲音的空間感:“FFT-based binaural panner”,該庫物件內部使用了“jit.matrix”來保存HRTF的數據,可以對雙耳效應的聽覺算法加以調整;“spat”庫由法國現代音樂研究所(IRCAM)編寫,創作者可以通過這個庫實現三維空間中的聲源定位,同時該庫也包含了大量的HRTF數據;而由蘇黎世藝術大學計算機音樂與聲音技術研究所編寫的“ICST Ambisonics”庫,則基于 Ambisonics這一技術原理來呈現聲音空間化的擴展包。
本次研究中,通過基于Cycling 74 MAX構建了跨平臺的聲音空間定位效果,更深入了解多普勒效應、聲衰減等聲學現象和物理運算。目前研究實現了最基本的聯覺和聽覺空間定位需求,但為了更加具有沉浸式體驗的聽覺感受還需要在后續的研究中嘗試加入HRFT等其他影響聲音呈現的運算,以增強這類創作方式下的聲音空間交互呈現效果,并結合增強現實技術在電子音樂和聲音裝置作品創作實踐中探索更多的可能性。