版權(quán)聲明:本文來(lái)自于icoolmedia,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明出處,相關(guān)的音視頻算法討論請(qǐng)加群(374737122)一起交流!
一、混響時(shí)間的計(jì)算與預(yù)測(cè)
所謂混響就是聲音的直達(dá)聲與反射聲很緊湊的重合在一起時(shí)人耳所聽(tīng)到的聲音,這個(gè)效果在語(yǔ)音的后期處理時(shí)特別有用。能產(chǎn)生混響最常見(jiàn)的場(chǎng)景就是房間內(nèi),尤其是空曠的房間中。
混響有直達(dá)聲,早期反射和后期反射聲組成。其中直達(dá)聲是聲源信號(hào)不經(jīng)過(guò)任何障礙物直接到達(dá)人耳的那部分、早期反射聲由一次或者幾次反射的聲音信號(hào)組成、后期反射聲由隨后更多次的反射聲音信號(hào)組成。混響效果的空間感主要由早期反射聲決定。
在一個(gè)房間中,聲音衰減所消耗的時(shí)間是房間的吸聲系數(shù)和聲波走過(guò)的距離的函數(shù)。聲波在其傳輸并衰減的過(guò)程中,經(jīng)過(guò)每?jī)蓚€(gè)界面之間的平均距離就是眾所周知的平均自由程,它可以通過(guò)如下公式計(jì)算得到:
(1.1)
這里:
MFP 平均自由程,單位為米
V 房間的體積,單位為立方米
S 房間的總表面積,單位為平方米
將式(1.1)除以聲速,可以得到兩次反射的時(shí)間間隔為:
(1.2)
假如每次反射時(shí),都有a部分能量被墻壁吸收,這時(shí)a為墻壁的吸聲系數(shù),那么則有(1-a)部分的聲能被反射回來(lái),并作用于下一次反射,且每一次都有a部分聲能被吸收,因此,經(jīng)過(guò)n次反射后,回來(lái)的聲能為:
(1.3)
由于a為小于1的系數(shù),(1-a)也小于1,因此式(1.3)表示聲能按指數(shù)規(guī)律衰減。為了求出聲能衰減到指定比例所需要的時(shí)間,就要先求出在指定時(shí)間間隔內(nèi)聲波發(fā)生反射的次數(shù),而這個(gè)可以通過(guò)將這個(gè)時(shí)間間隔除以兩次反射的時(shí)間間隔得到,基于式(1.2)得到:
(1.4)
這里t為混響的總時(shí)間(單位為秒),將式(1.4)代入式(1.3)中,得到經(jīng)過(guò)時(shí)間t后剩余的聲能為:
(1.5)
因此,經(jīng)過(guò)一定的時(shí)間t后,聲能的衰減比例為:
(1.6)
對(duì)式(1.6)兩邊取以(1-a)為底的對(duì)數(shù)得:
(1.7)
因此,達(dá)到一定衰減比例所需要的時(shí)間為:
(1.8)
將以(1-a)為底的對(duì)數(shù)轉(zhuǎn)換為自然對(duì)數(shù)(使用高中學(xué)過(guò)的換底公式)得:
(1.9)
式(1.9)給出了聲能衰減比例與所需時(shí)間的關(guān)系,可用于計(jì)算所需的時(shí)間,即混響時(shí)間。我們可以選擇無(wú)限多種比例進(jìn)行計(jì)算,但最常用的是聲能衰減到60dB的聲能比,即:10-6。將此值代入式(1.9),得到聲能衰減到60dB所需的時(shí)間,即混響時(shí)間T60為:
(1.10)
式(1.10)被稱為艾潤(rùn)公式,式中負(fù)號(hào)與自然對(duì)數(shù)計(jì)劃結(jié)果的負(fù)號(hào)相抵消,得到一個(gè)正的混響時(shí)間值。在實(shí)際使用中,也可能會(huì)遇到計(jì)算其它衰減比例的混響時(shí)間,其計(jì)算方式與式(1.10)相同,不同的是常數(shù)部分。
上述公式的推導(dǎo)基于統(tǒng)計(jì)學(xué),因此式(1.10)的使用必須具備以后前提條件:
聲波以相同的機(jī)率從各個(gè)方向到達(dá)墻面的各個(gè)位置,即聲場(chǎng)為擴(kuò)散聲場(chǎng)。這個(gè)條件是為了利用房間平均吸聲系數(shù)的概念。平均自由程概念成立。這個(gè)也是利用平均吸聲系數(shù)的條件。它也意味著房間的形狀不能太極端,如:很長(zhǎng)的隧道就不適合。然而,對(duì)于大多數(shù)房間,平均自由程的概念是成立的另外,還有一個(gè)較簡(jiǎn)單的混響時(shí)間計(jì)算公式,稱為賽賓(Sabine)公式,是以其推導(dǎo)者Wallace Clement Sabine的名字命名的。也經(jīng)常使用。賽賓公式最初是通過(guò)考慮房間的平均聲能損失、解簡(jiǎn)單的微分方程推導(dǎo)出來(lái)的,但它也可以從艾潤(rùn)公式推導(dǎo)出來(lái),從而更清楚的看到賽賓公式的條件。艾潤(rùn)公式表示如下:
(1.11)
上式的困難在于需要計(jì)算(1-a)的自然對(duì)數(shù)。但是自然對(duì)數(shù)可以用以下無(wú)限級(jí)數(shù)表示:
(1.12)
因?yàn)閍 < 1,所以上述級(jí)數(shù)總是收斂的。而且,當(dāng)a < 0.3時(shí),級(jí)數(shù)值與a值的誤差小于5.7%,這時(shí),式(6.18)可以近似用下式近似:
(1.13)
式(1.13)就是賽賓公式,是最早出現(xiàn)的混響時(shí)間定量計(jì)算公式,也常被使用。
二.混響算法建模與實(shí)現(xiàn)
現(xiàn)在我們已經(jīng)知道了如何計(jì)算混響的時(shí)間,下面就來(lái)看下如何對(duì)混響進(jìn)行建模并實(shí)現(xiàn)。要對(duì)房間的響應(yīng)進(jìn)行建模,我們假設(shè)房間內(nèi)有一個(gè)向各個(gè)方向輻射的聲源,其響應(yīng)將由聲波走過(guò)的路徑、房間的吸聲系數(shù)(取決于光滑程度等)來(lái)決定、其中房間的吸聲系數(shù)決定了混響的總體時(shí)間,通常混響時(shí)間是指在封閉環(huán)境中,聲能衰減到60dB時(shí)所需要的時(shí)間。
由于每次反射都會(huì)因?yàn)閴Ρ凇⒄系K物等吸收一部分能量,所以聲音信號(hào)的能量呈指數(shù)衰減。因此混響信號(hào)可以看成由直達(dá)聲與許多逐步衰減、不斷延遲的回聲信號(hào)疊加而成,很自然的想到可以利用等比數(shù)列求和來(lái)進(jìn)行模擬混響:
(2.1)
這里x(n)為原始聲音信號(hào)、y(n)為混響信號(hào)、a為衰減系數(shù)、D為延遲時(shí)間。寫成傳遞函數(shù)為:
(2.2)
由等比數(shù)列求和公式,傳遞函數(shù)可以轉(zhuǎn)換為:
(2.3)
熟悉信號(hào)處理的朋友可能會(huì)比較眼熟,這不正是梳狀濾波器嗎?,一點(diǎn)沒(méi)錯(cuò)!正是IIR梳狀濾波器,其典型的頻譜特性為:
如果寫成差分方程,可表示為:
(2.4)
然而,正如上圖中所示,梳狀濾波器頻譜曲線不平坦,呈現(xiàn)明顯的梳狀效應(yīng),從而對(duì)不同的頻率成分幅度產(chǎn)生波動(dòng),導(dǎo)致有金屬聲染色效應(yīng),聽(tīng)起來(lái)不夠自然,另外,單純使用梳狀濾波器,其回聲密度還是不夠多。
那么繼續(xù)進(jìn)行思考,什么樣的濾波器既有信號(hào)的延時(shí)效應(yīng),頻譜又比較平坦呢,很多朋友應(yīng)該想到了:全通濾波器。是的,接下來(lái)使用全通濾波器對(duì)混響模型進(jìn)行改進(jìn),它比梳狀濾波器多了一個(gè)前向反饋支路,一階全通傳遞函數(shù)可以表示為:
(2.5)
其差分方程為:
(2.6)
最后,讓我們來(lái)看Schroeder發(fā)明的他的著名的混響產(chǎn)生模型:4個(gè)并聯(lián)的梳狀濾波器與2個(gè)串連的全通濾波器,如下圖所示,在Schroeder混響模型中,梳狀濾波器提供了混響效果中延時(shí)較長(zhǎng)的回聲,全通濾波器提供了較短延時(shí)的回聲,從而增加了反射回聲的密度,同時(shí)又避免了由于梳狀濾波頻譜不平坦造成的金屬染色效應(yīng)。
然而,從實(shí)際效果來(lái)看,如果完全按照全通濾波器來(lái)實(shí)現(xiàn),回聲密度還是有點(diǎn)不夠理想,改進(jìn)方法是:不完全使用全通濾波器的實(shí)現(xiàn),人為的增大反饋,使回聲的能量增大。這樣同樣的衰減因子情況下,混響持續(xù)的時(shí)間就會(huì)變長(zhǎng),出來(lái)的混響效果會(huì)更理想。
人為的增大反饋,帶來(lái)的唯一問(wèn)題是。當(dāng)個(gè)別的語(yǔ)音能量本身比較大時(shí),有時(shí)候會(huì)帶來(lái)溢出問(wèn)題,不過(guò)也不用過(guò)于擔(dān)心,通過(guò)增大空氣濕度的衰減系數(shù)就可以很容易調(diào)整過(guò)來(lái),整體來(lái)講實(shí)現(xiàn)效果是比較好的,這部分內(nèi)容已經(jīng)在群里進(jìn)行過(guò)好幾種方案的討論,大家都認(rèn)為實(shí)踐中人為增加回聲反饋效果會(huì)更好。
關(guān)于各個(gè)濾波器混響時(shí)間參數(shù)哪些配合起來(lái)聽(tīng)感比較自然,其實(shí)也是不用去一一再進(jìn)行研究的,我發(fā)現(xiàn)好幾個(gè)混響的開(kāi)源實(shí)現(xiàn)中,都使用相同的參數(shù)配置(忘了最初的資料是哪里了,如果有找到的望不吝嗇賜教),據(jù)說(shuō)這樣聽(tīng)感比較自然。
我提取了這些參數(shù),略做了一點(diǎn)修改和整理,寫了個(gè)測(cè)試Demo(TestReverb)。如果有感興趣的朋友可以到音視頻算法討論QQ群(374737122)里下載并交流。歡迎就延時(shí)網(wǎng)絡(luò)法和立體聲混響實(shí)現(xiàn)進(jìn)行討論。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注