pystyykö ääntä tai yleensä audiota mallintamaan?
kaikenlaista 3d-mallinnussoftaa kyllä löytyy valon mallintamiseen. heijastukset ym.
äänihän on säteilyä niinkun valokin?
esimerkkinä voisi olla pyörivä kaiutin. sen tuottama efekti tunnetaan paremmin nimellä phase shifter.
netistä löytyy aika niukasti tietoa aiheesta. tieteellisiä tutkimusraportteja sitäkin enemmän.
kaikenlaista 3d-mallinnussoftaa kyllä löytyy valon mallintamiseen. heijastukset ym.
äänihän on säteilyä niinkun valokin?
esimerkkinä voisi olla pyörivä kaiutin. sen tuottama efekti tunnetaan paremmin nimellä phase shifter.
netistä löytyy aika niukasti tietoa aiheesta. tieteellisiä tutkimusraportteja sitäkin enemmän.
Vastaukset 15
Vanhimmat
Toki. Yksinkertaisimmillaan jotain ADSR verhokäyrää, aaltomuotoa ja modulointia kuten syntentisaattorien instrumentit on mallinnettu, mutta toki voit ottaa fysiikan kirjan käteen ja mallintaa ääniaaltoja tilassa.
"äänihän on säteilyä niinkun valokin?"
Ei. Ääni on väliaineessa etenevää mekaanista aaltoliikettä. Noin yksinkertaisimmillaan laita joku värähtelijä tilaan, sinne pintoja jotka heijastaa takaisin ääniaaltoja, ja sitten jokin tarkkailupiste mistä ääni havainnoidaan. Laskentaan kävisi joku FEM.
Valmista softaa lienee niukasti kun äänen mallinnusta tarvitsee aika vähän.
Kyllä äänen mallintaminen onnistuu, mutta nykykoneilla se on erittäin hidasta, jopa hitaanpaa kuin fotonijäljitys (photon tracing), koska aaltojen heijastuminen pitää laskea myös sisällä objektejen materiassa ja muissa väliaineissa, kuten ilmassa. Nykyisin sitä sovelletaan ilmeisesti lähinnä akustisten tilojen arkkitehtuurissa ja eri tuotteiden, vesihanoista lentokoneisiin, suunnittelussa.
Jos koneet nopeutuvat nykyistä tahtia, ehkä 10 vuoden päästä näkee kotikoneissa jotenkin sovellettuna. Vaikka similoituja soittimia yms. Tosin tällöinkin hyvin rajallisella objektejen/pintojen määrällä.
Tietokonepeleissä voi tulla aikaisemminkin äärimmilleen yksinkertaistettuna äänten generointina fyysisten tapahtumien pohjalta.
Tai sitten ei, tuo oli vain spekulointia. Ääntä on kuitenkin helppo nauhoittaa ja tallettaa pieneen tilaan. Ja uskottava "huijaaminen" on helppoa, joten mallintaminen ei vain ole ollut kovin tärkeää.
Alkuperäisessä GSM -matkapuhelinjärjestelmässä käytetään GSM 6.10 -puhekoodekkia.
Input: 8000 näytettä sekunnissa, joko 8 tai 16 bit/näyte.
Output: 13000 bittiä/s
Noin tiivis pakkaus ei kunnollisella äänenlaadulla onnistu mille äänelle tahansa.
Siksipä GSM -puhekoodekin kehittäjät mallinsivat ihmisen äänentuottojärjestelmän (mm. äänihuulet, sekä keuhkot ilmavirtauksen muodostajana ja nielun ja suun/kielen sen muokkaajana jne.).
Tästä saatujen tietojen avulla onnistuttiin kehittämään puhekoodekki, joka pystyy välittämään puhetta kelvollisella äänenlaadulla vaikka datanopeus GSM -matkapuhelimesta GSM -verkkoon puhuttaessa on vain 13 kbps käyttäjän dataa (eli enkoodattua puhetta) kehystys ja virheenkorjaus tuohon päälle.
Lisää aiheesta:
http://user.cs.tu-berlin.de/~jutta/toast.html
em. syystä, jos GSM -matkapuhelimella yrittää välittää musiikkia, niin jotain mölyähän sieltä kuuluu, mutta musiikki kuuluu matkapuhelun läpi varsin vääristyneenä, syynä juuri se, että silloin koodekkia käytetään enkoodaamaan sellaista ääntä, jonka koodaukseen sitä ei ole suunniteltu.
Toki nykyisissä puhelimessa on myös uudempia koodekkeja, mutta kehitys on sikäli hidasta, että sekä matkapuhelimen että matkapuhelinverkon tulee tukea uudempaa koodekkia jotta sitä voisi käyttää.
Tässä täytyy vielä ottaa huomioon, että vaikka puhelimesi olisi uusinta mallia, niin kukaan ei estä puhelun toisessa päässä käyttämästä vaikkapa vuonna 1994 valmistettua Ericsson GH174 -puhelinta.
Siispä, jos oma puhelimesi osaa sen uusimman koodauksen, ja vastapäässä on joku ikivanha puhelin, niin operattorin matkapuhelinkeskus joutuu muuntamaan 2 eri koodekin välillä, ja muunnos toki huonontaa äänenlaatua entisestään.
GSM -matkapuhelimissa muuten yksi koodauskehys on 32,5 tavua.
Koska PC:ssä taas suositaan kokonaisia tavuja, niin haluttaessa käyttää samaa koodekkia PC:ssä, tästä on olemassa 2 eri versiota, toisessa lisätään 4 bittiä tyhjää, jolloin saadaan 33 tavun kehyspituus, toisessa taas (ns. MS-GSM) laitetaan 2 alkuperäisen kaltaista kehystä yhteen ja näin saadaan 65 tavun tuplakehys. Jälkimmäistä tapaa käyttää siis Microsoft.
Noita puheen koodaamiseen erikoistuneita koodekkeja on muitain kui nGSM eri versioineen, esim:
speex (ilmainen ja avointa lähdekoodia)
Compandent (kaupallinen ja lisensiointiehtojensa takia vain suuryritysten tuotteisiin soveltuva: ensimmäinen kappale maksaa lisenssimaksuina n. miljoona euroa, ja jokainen lisäkappale 1-2 euroa/kpl, eli jos tuotettasi myydään alle miljoona kappaletta, niin tulee liian kalliiksi. Toki, jos olet varma, että tuotettasi myydään 100.000.000 kpl tai enemmän, niin ehkä saat neuvoteltua hinnaksi 1 euro/kpl tai alle, kun maksat koko summan kerralla etukäteen).
Tuo Compandent ilmeisesti koodaa kaikista pienimpään tilaan ja silti kelvollisella laadulla, mutta lisenssipolitiikkansa takia se ei ole juurikaan yleistynyt.
GSM:n koodekit perustuvat pikemminkin ihmisen äänentuottojärjestelmän mallintamiseen lineaariprediktoreila kuin varsinaiseen äänen mallintamiseen. Eikä sitä mallinnusta todellakaan tehneet GSM:n kehittäjät vaan kyllä se oli jo silloin ihan tunnettua tekniikkaa. Homman tarkoitus on pakata ääni mahdollisimman vähään määrään bittejä ja lineaariprediktoreiden lisäksi käytetään muun muassa vektorikvantisointia ja muita pakkausta parantavia menetelmiä.
Sen sijaan mitään tilan mallintamista tai äänikenttien mallintamista GSM:ssä ei ole ollenkaan.
Kyllä mallinnettuja instrumenttejä on jo jonkin verran yleisesti saatavilla. Kannattaa tsekata esim www.wallanderinstruments.com ja www.synful.com. Nämä ovat siis osittain mallinnukseen ja osittain sampleihin perustuvia orkesterisoftia. Lisäksi www.pianoteq.com valmistaa täysin mallinnettua VST pianoa.
Osoitteesta www.xoxos.net/vst löytyy VST muotoisia suht yksinkertaisia instrumenttimallinnuksia.
Valmiita instrumenttejä lukuunottamatta en mitään varsinaisia 3D äänenmallinnussoftia tiedä.
Erona valon rendauksessa ja äänen rendauksessa on, että valon aallonpituus on hyvin pieni verrattuna esteisiin, kun taas äänellä se on selkeästi esteiden kokoluokkaa. Valon rendauksessa (säteenseurannassa) voidaan siis ihan hyvin käyttää sitä fotonien hiukkastulkintaa laskennassa eli oletetaan että aaltopaketit on niin pieniä että ne etenevät kuin hyvin pieni hiukkanen. Sen sijaan äänen eteneminen pitää oikeasti laskea aaltoyhtälöstä (vaikka FEM:llä tai BEM:lllä), koska hiukkastulkinta ei enää ole tarpeeksi tarkka, ja tämä on huomattavasti monimutkaisempaa kuin säteenseuranta. Kaikki vaiheen muutoksiin, diffraktioon yms liittyvät efektit tulevatkin juuri vasta aaltoyhtälöstä laskettaessa esiin.
Ihan eri juttuja ovat sitten taas äänen mallinnus Fourier-kannassa, resonaattoreilla, autoregressiivillä malleillla, suodinpankeilla yms, mutta oletan että tarkoitit tuota äänikenttien mallinnusta.
helppoa!
http://www.google.fi/search?hl=fi&rlz=1R2GGLR_fiFI329&q=directsound&btnG=Hae&meta=
Ai niin. Ei mitenkään!
tule ääntä, ellei tilassa ole äänen lähdettä. Äänen mallinnus on suurimmalta osaltaan sen tilan, jossa ääni on, mallintamista. Näin se liittyy. Opettele lisää äänen ja äänenmuodostumisen teoriaa ja käytäntöä. C-duurikin on ääni ja useita yliääneksiä yhdessä jossain tilassa, jonka parametrit on tarkoin tunnettava, ennen kuin C-duuriakaan päästään mallintamaan.
tila ensin, että voidaan stimilöidä, miltä ääni tilassa kuulostaa. Tietysti voitaisiin laittaa kirvesmies- ja muurariporukka rakentamaan se tila ensin ja laittaa ääni sinne, mutta nykytegnolokialla siinä ei olisi mitään järkeä. Jos ei osaa rosessoinnin vaatimaa tilamatematiikkaa, voi toki ostaa itsellensä tilarosessorin, johon täysin kaiuttomassa tilassa syötetty ääni kuulostaa juuri sellaiselta kuin siihen rosessoriin syötetyt parametrit sitä ääntä toistavat. Tulee siis matemaattisesti epälahjakkaan hankkia ääntä stimuloidessaan itsellensä metrin mitta ja kirvesmiesporukka, joka toteuttaa käytännössä sen täysin kaiuttoman tilan.
Eli äänen mallinnuksessa, ei prosessoinnista. Tilaääni on jo kauan sitten ratkaistu ongelma. Ääniaaltojen heijastumisen mallintaminen eri materiaaleissa onkin sitten "hieman" monimutkaisempaa. DirectX (DirectSound) ei siinä auta millään tavalla.
kun et osaa ohjelmoida, mutta jos osaisit, niin siellä lisi sulle melkein kaikki kuuntelutuolitkin valmiina, jotka luonnollisesti kuuluvat sen äänentoistotilan kalustoon.
DirectSound:ssa ei kyllä ole mitään oikeaa äänikenttien mallintamista. Se perustuu ihan ad-hoc reverb-, echo-, viive-, suodatus-, yms malleihin. Muun muassa diffraktion mallia ja diffrektioita yleensäkään sieltä lienee turha etsiä. Ja kuten joku jo mainitsikin, toki materiaalien ominaisuuksien koodaus malleihin (vaikkapa reverbiinkin) on ihan oma taiteenlajinsa, johon tuo kirjasto ei auta.
Ja siis tokihan jo Lordi Rayleigh tiesi kaiken tarpeellisen äänen mallintamisesta viime vuosisadalla - siis äänikenttien mallintamisen kaikkien fysiikan sääntöjen mukaan. Mutta yhtälöt ovat vaan niin monimutkaisia, että niiden ratkaisemiseen tarvitaan numeerisia menetelmiä joita on kehitelty vielä tässä viime vuosikymmeninäkin. Eikä nykyajan tietokoneetkaan vielä riitä niiden tarkkaan ratkaisemiseen (eivätkä muuten tulevaisuudenkaan).
Etkä näköjään ymmärrä äänen mallinnuksesta yhtään mitään. DirectSound ei ääntä osaa mallintaa, piste. Ainoastaan äänilähteiden suodatusta 3D-vaikutelman antamiseksi. Itse äänilähteet ovat aina sampleja. Eli mene höpöttämään jonnekin muualle, jos et mistään mitään tiedä.
Kuuntelutilassa oleva väliseinäkin suodattaa koolinkinsa sislämyksistä riippuen siihen suunnattua epä- tahi sitä harmoonisempaa värähtelyä, jonka eräs alue on kuuloalueella ja sitä kutsutaan ääneksi, eri tavoin ja samoilla sisälmyksilläkin eri taajuuisia värähtelyitä eri tavoin. Opettele lisää äänenmuodostuksen fysiikkaa. Myös kovan kallon luut suodattavat.