. .
Modelování 3D zvuku
. .
0. Úvod
Tento článek představuje velmi stručný úvod do problematiky
modelování prostorového zvuku. První kapitola je věnována akustice,
druhá stručně (ale velmi stručně) shrnuje funkci ucha a třetí se věnuje
popisům metod modelování zvuku.
1. Základní fyzikální pojmy
Každý z nás asi ví, že zvuk je chvění částic pevného, tekutého nebo
plynného prostředí kolem jejich rovnovážných poloh. Pokud je toto
chvění v rozsahu zhruba 10 až 20000 Hz, mluvíme o slyšitelném zvuku.
Rychlost takového chvění se nazývá akustická rychlost.
Zvuk se může šířit prostřednictvím pružných vazeb mezi částicemi ve
formě zvukových vln. Rychlost tohoto šíření se nazývá rychlost zvuku.
Ve vzduchu je zhruba 330 metrů za vteřinu (pedant by sem připsal, že za
sekundu, za normálního atmosferického tlaku a že je zde menší tepelná
závislost (asi tak 0.6 metrů na stupen Celsia), ale autor není pedant).
Částice, jak se chvějí, generují malé změny v tlaku, kterým říkáme
akustický tlak. Intenzita zvuku je množství zvukové energie, která
projde jednotkou plochy. Dá se rovněž vyjádřit vektorovým součinem
akustické rychlosti a tlaku a její velikost klesá s kvadrátem
vzdálenosti od zdroje zvuku.
Minimální akustické tlaky slyšitelného zvuku dosahují hodnot 1E-5 Pa,
ale ucho není poničeno, pokud je vystaveno rychlým změnám tlaku menším
než 20 Pa. Protože človek je tvor myslící a vnímající logaritmicky,
zavedl veličinu hladina intenzity, která je v decibelech [dB], a
definoval ji jako 10.log (I/I0), kde I0 stanovil na 10E-12 W.m^-2.
Šíření zvuku popsal pan Huygens svým principem šíření vlnění. Každý
bod vlnoplochy se chová jako bodový zdroj vlnění a výsledná vlna je
určena obálkou všech takto vzniklých vln.
Když zvuk narazí na překážku, je jeho část odražena zpět do scény,
část je pohlcena stěnou, která přemění zvukovou na tepelnou energii
(taky vám je horko, když na vás někdo začne křičet? :-) ), a část se
ohne za překážku.
Odrazy jsou zrcadlové a difúzní, jako u světla. Zrcadlové vznikají na
hladkých površích. Hrubé povrchy odráží difúzně.
Jak již bylo řečeno, zvuk se umí i ohnout za překážku. Tento jev je
daleko snáze pozorovatelný zde, než u světla, vzhledem ke srovnatelným
velikostem vlnových délek s běžnými překážkami (jako například slon či
jezevec) a je přísně frekvenčně závislý. Čím nižší frekvence zvuku, tím
se lépe ohýbá. Roh budovy tak vlastně připomíná low-pass filtr.
Schopnost pohlcovat zvuk je u různých materiálů různá. Koeficient
zvukové pohltivosti (mimochodem - také frekvenčně závislý) je definován
jako podíl pohlcené a celkové energie zvukové vlny. Např. zvuková
pohltivost koberce je zhruba 0,05 pro 128 Hz a až 0,9 při frekvencích
přes 4096 Hz (v knížce sice bylo 100 a 4000, ale to jsou moc fádní
čísla).
Zvuk je vyzářen ze zdroje a zachycen posluchačovýma ušima. Pokud ve
scéně nefigurují žádné stěny ani překážky, slyší posluchač pouze přímý
zvuk. Stěny, jak již známo, vyvolávají odrazy, které posluchač rovněž
registuje. Takovému zvuku se říká ozvěna (echo). Je zpožděna oproti
přímému zvuku a utlumena stěnami. Dozvuk místnosti (reverberation) je
soubor takovýchto ozvěn a jeho délka (interval mezi koncem zvukového
signálu vysílaným zdrojem a koncem posledního slyšitelného echa) se
nazývá doba dozvuku (reverberation time). Pro mluvené slovo je ideální
pod půl vteřiny, symfonická hudba vyžaduje dozvuk delší. Tleskejte
někdy na různých místech Hlavního nádraží v Praze a jestli vás
neokradou místní lupičské gangy (dychtící po penězích) a neseberou
psychiatři (dychtící po bodech), vytvoříte si celkem hezkou představu o
délce dozvuku.
2. Ucho a určení polohy zvuku
Periferní sluchový systém je tlakový receptor pracující v oboru
akustických tlaků a slyšitelných frekvencí. Jedná se o orgán, který
provádí frekvenční analýzu zvukového signálu v reálném čase.
Skládá se ze tří částí, vnější, střední a vnitřní ucho.Vnější (boltec
a zvukovod) pracuje jako zvukový kolektor a složitý frekvenční filtr,
střední (bubínek, kladívko, kovadlinka a třmínek) jako mechanický
zesilovač a vnitřní (hlemýžď s Cortiho orgánem) jako frekvenční
analyzátor.
Funkci hlemýždě popisují teorie slyšení. Nejznámější je rezonanční
teorie: Cortiho orgán obsahuje vlákna napojená na citlivá nervová
zakončení. Poloměr hlemýždě se vzdáleností od vstupu do vnitřního ucha
zmenšuje, takže vlákna nejsou stejně dlouhá. Každé vlákno je "naladěno"
na určitou frekvenci. Je-li tato obsažena ve zvuku přicházejícím do
ucha, rozkmitá se v rezonanci a podráždí příslušné nervové zakončení.
Do mozku se dle této teorie přenáší po sluchovém nervu frekvenční
spektrum signálu. (Napojit sluchový nerv na komp a máme velmi kvalitní
hardwarový akcelerátor encoderu MP3 :-).)
Podobně jako binokulární efekty v prostorovém vidění se uplatňují
binaurální efekty v prostorovém slyšení. Princip je velmi podobný:
Analýza rozdílů přijímaných zvukových signálů v mozku poskytuje
informace o vzdálenosti a poloze zvuku a zároveň o prostoru, ve kterém
se posluchač nalézá.
Lokalizaci zdroje (informaci o jeho poloze) je možné extrahovat ze
vstupních signálů analýzou následujících jevů (cues):
Meziušní prodleva (Interaural time difference; ITD) je způsobena
malou rychlostí zvuku. Vzdálenost, kterou musí zvuk urazit ze zdroje do
obou uší, není stejná a mozek je schopen interpretovat vzniklý časový
rozdíl jako lateralizaci zdroje zvuku, t.j. informaci, zda např.
troubící slon je spíše vlevo nebo spíše vpravo od nás.
Za meziušní rozdíl intenzit (Interaural intensity difference; IID)
může tzv. stín hlavy (zvuk prošlý skrze hlavu je utlumen) a v menší
míře rozdíl vzdáleností uší od zdroje, kdy se projeví kvadratická
závislost intenzity na převrácené hodnotě vzdálenosti. IID je také
složka lateralizace.
Odezva boltce je velmi důmyslný aparát, který nás informuje, jak
vysoko (myšleno polohově) je zdroj zvuku. (Troubí-li např. zmíněný slon
ze stromu nebo ze sklepa.) Zmíněný jev je možné aproximovat pomocí tzv.
head related transfer functions (HRTF), sadou frekvenčních filtrů,
které byly experimentálně naměřeny pomocí malých mikrofonů v uších.
Zpřesňující informaci o výšce zdroje poskytuje také odraz od ramen.
Následující jevy nám přináší informaci o tvaru prostoru, kde se
nalézáme: jedná se o blízké ozvěny a dobu dozvuku. Mozek je schopen
rozlišit složky slyšeného zvuku na přímé a odražené. Podle časové
vzdálenosti mezi přímým a odraženým zvukem určí mozek vzdálenost
překážky. Doba dozvuku je úměrná velikosti místnosti a materiálu jejích
stěn.
3. Metody modelování
Naším hlavním úkolem je vypočítat sadu ozvěn (jejich časové polohy a
utlumení) a složit z nich výsledný zvuk.
Bez ztráty obecnosti můžeme zvuk ze zdroje rozložit do nekonečně
mnoha paprsků vycházejících ze zdroje, pokud vyplní celý prostorový
úhel. Všechny takové paprsky se chovají tak, jak bylo popsáno
v kapitole 1: odráží se, jsou pohlcovány etc. Pro všechny paprsky,
které dopadnou do některého z uší, si zapamatujeme, do jakého ucha
dopadly, o kolik se zpozdily, jak se utlumily a jakým směrem zavítaly
do ucha. Tento soubor hodnot je tzv. akustická impulsní odezva
prostoru.
Mějme na paměti, že kvalitní 3D Sound Engine by měl při výpočtu
odezvy zohledňovat všechny jevy zmíněné v kap.2. Proto je nezbytné do
scény také zařadit posluchačovo tělo. Nejjednodušší reprezentace
posluchače je koule o velikosti hlavy a další dvě koule po stranách
hlavy reprezentující obě uši.
Zvuk, který by slyšel posluchač na příslušném místě ve scéně,
spočítáme jako konvoluci zvukového signálu zdroje a impulsní odezvy.
Vytvoříme prázdný buffer a podle impulsní odezvy do něj mixujeme
signál. Výsledný stereofonní signál pustíme do sluchátek a kocháme se.
Jednotlivé metody modelování zvuku se liší od sebe metodou výpočtu
impulsní odezvy. Metoda zrcadlových odrazů se hodí pro simulaci
jednoduchých prostorů. Předpokladá vytvoření virtuálních zdrojů zvuku
za všemi stěnami (viz obrázek ). Je možné vyšetřovat odrazy i vyšších
řádů, ale jejich počet exponenciálně narůstá s požadovaným řádem.
Předchozí odstavce evokovaly myšlenku raytracingu. Je to metoda velmi
jednoduchá, její popis bychom všichni zcela jistě nalezli v některé
z předchozích Výhní. Jediné, co musíme udělat, je předefinovat
generátor paprsků a nadefinovat všem povrchům odrazivost. Paprsky
můžeme generovat náhodně (Monte Carlo raytracing), podle vrcholů
geodetické koule etc. Jediné, co musíme dodržet, je, aby paprsky
homogenně vyplnily prostor.
Nevýhodou těchto metod je, že se velmi obtížně kalkuluje s ohybem
zvuku. Jisté zlepšení přináší metoda cone tracingu, trasování obecného
kužele. Zdroj zvuku je generátor kuželů, u nichž je vyšetřován průnik
podstavy s překážkami. Po kolizi s překážkou je kužel rozdělen na jiné
dva kužele s navzájem komplementárními podstavami. Jeden z nich
pokračuje dále, druhý je odražen zpět. Ohyb zvuku je zde možné
simulovat přidáním určité části kužele. (Viz obrázek )
Nejpřesnější modely akustické reality vystupují z aplikací metody
konečných prvků, ale tu již odsuňme nad rámec tohoto článku.
4. Závěr
Autor se pokusil o popis základních skutečností, které musíme brát
v úvahu při návrhu 3D zvukového enginu. Jestli nevyschne pramen jeho
inspirace, pokusil by se v dalším čísle na toto téma navázat.
Dopisy případných zájemců o další informace vřele přivítá na adrese
AdamJ@tfc.cz nebo sporkaa@cs.felk.cvut.cz.
Autor děkuje Doc. Slavíkovi, Ing. Havranovi a Ing. Mikšíčkovi (ČVUT,
FEL) za mnoho velmi cenných rad.
AdamJ / SQC & WSS
Odkazy na literaturu
[1] F. Kolmer, J. Kyncl - Prostorová akustika, SNTL, Praha 1980
[2] R. E. Berg, D. G. Stork - The Physics of Sound, Prentice-Hall,
Inc., 1982
[3] J. Žára, B. Beneš, P. Felkel - Moderní počátačová grafika, Computer
Press, Praha 1998
[4] N. Tsingos, J.-D.Gasquel - Fast rendering of sound occlusion and
diffration effects for virtual acoustic environments
[5] T. Funkhouser, I. Carlbom, G. Elko, G. Pingali, M. Sondhi, J. West
- A Beam Trancing Aproach to Acoustic Modeling for Interactive
Virtual Environments, SIGGRAPH '98
[6] J. Jelen, J. Lego - Fyzika II Vydavatelství ČVUT, Praha 1997
[7] A. Farina, P. Galaverna, G. Truffelli - "Ramsete" un nuovo software
per la previsione del campo sonoro in teatri, ambienti industriali
ed ambiente esterno.
[8] Jízdní řád ČD 1998/1999
výheň