ObsahVizualizace zvukuJiří Jakubec (jakubji3@fel.cvut.cz), Tomáš Látal (latalto2@fel.cvut.cz), Dagmar Tkadlecová (tkadldag@fel.cvut.cz). O interpretaci hudebních skladeb pomocí barev se zajímali již Goethe s Newtonem, kteří se domnívali, že hudební i barevné tóny sdílejí stejné frekvence. I když byla tato úvaha chybná, vedla ke konstrukci „barevných varhan“, clavier à lumières, které umožňovaly pořádat barevné koncerty. V současnosti je možné vizualizovat zvuk jak pomocí hudebních přehrávačů, tak pomocí softwaru, který umožňuje podobu vizualizace přímo ovlivňovat. ZadáníRealizujte aplikaci, která umožňuje vizualizovat zvuky tak, aby bylo snadným způsobem rozpoznatelné o jaký zvuk se jedná a jaké má vlastnosti. State of the art (rešerše)Vizualizaci přehrávané skladby nabízí v současné době většina volně dostupných hudebních přehrávačů. V rešerši jsme se zaměřili na dva programy, které jsou vedle Windows Media Playeru pro přehrávání hudby nejpoužívanější. Všechny obrázky byly zachyceny vždy přibližně po jedné čtvrtině skladby. iTunesAsphyxia: Obliterate My Fate (dark electro) Sabaton: Screaming Eagles (power metal) Astral Projection: No One Ever Dreams (goa trance) Psyclon Nine: We The Fallen (industrial) V iTunes je vizualizace přehrávané skladby řešena mapováním bubnů na barevné tečky, které pulzují v rytmu hudby: čím vyšší je hodnota bpm (beats per minute), tím více teček lze pozorovat (nestačí vyblednout). Délku tónu pak zřejmě určuje délka barevných čar: melodie, která rychle mění výšku, je tak zachycena pomocí křivek. 3D efekt vizualizace je docílen jak neustálým pohybem kamery po prostoru, tak i přidáním kulovitých objektů, které se po scéně pohybují a mění tvar i barvu. Jejich přímá souvislost s hudbou však není pozorovatelná: podle informačních stránek Apple o iTunes je vizualizace založena na rytmu skladby, což vede k závěru, že většina efektů je generována náhodně. Tuto úvahu podporuje také fakt, že stejná skladba má pokaždé jinou vizualizaci. Díky výrazným barvám na černém pozadí mají iTunes vizualizace působivý vzhled a 3D pojetí umocňuje prostorový zážitek z hudby. Nicméně, jak plyne z přiložených obrázků, použít vizualizaci jako identifikaci skladby není možné: odstíny barev i tvary 3D objektů zůstávají stále stejné, nezávisle na hudebním stylu skladby, jejím bpm nebo tónině. WinampBehemoth: At The Left Hand Ov God (death metal) Covenant: We Stand Alone (future pop) Deathstars: Death Dies Hard (deathglam) God Module: Victims Among Friends (harsh EBM) Winamp nabízí mnohem větší škálu rozličných animací, které jsou většinou tvořeny symetrickými tvary. Jak je možné vidět z přiložených obrázků, barva i vzor se mění během přehrávání jedné skladby několikrát, vždy po uplynutí určitého časového okamžiku. Obrazce pulzují v rytmu hudby, a vizualizace jsou tedy stejně jako v případě iTunes založeny zejména na rytmu skladby. Díky obrovskému množství náhodně generovaných obrazců přináší Winamp spoustu originálních způsobů zobrazení přehrávané skladby - ovšem ani v tomto případě není možné ze snapshotu usuzovat cokoliv ohledně bpm, tóniny nebo stylu skladby. Quartz ComposerDJ Spoke: Watch Them Fall Down Jedná se o vývojový nástroj určený pro Mac OS X, který slouží převážně ke zpracování a renderování grafických dat. Jeho vizuální programovací prostředí je vhodné zejména pro vývoj modulů určených ke zpracování grafiky bez nutnosti cokoliv programovat a dále pak k prozkoumávání vizuálních technologií v Mac OS X bez nutnosti učit se programovací rozhraní pro danou technologii. Quartz Composer se používá k vytváření Quartz kompozicí, což jsou procedurální pohyblivé grafické programy sestavené z existujících modulů (nazývajících se obvody) vytvářející sled operací a jejich vykreslování. ProcessingJedná se o programovací jazyk a k němu odpovídající vývojové prostředí, které nabízí možnost vytváření vizualizačních programů i k hardwarovým kitům jednoduchým způsobem. V referenci jazyka jsou obsaženy běžné funkce jako např. v C/C++, ale navíc také funkce pro práci se sériovým portem, pro práci s myší a klávesnicí atd., ale především pro práci s grafikou. Oproti ostatním programovacím jazykům nabízí Processing výrazné zjednodušení. Není potřeba zabývat se problémy spojenými s grafikou a periferiemi, stačí se soustředit pouze na zpracování dat. Jeho další nespornou výhodou je multiplatformnost, protože je založen na programovacím jazyce Java. link:Processing home page Návrh řešeníProgramovací jazyk a vývojové prostředíPro vývoj aplikace byl zvolen programovací jazyk Java s rozšířením joGL, které umožňuje propojení Javy a OpenGL. K programování v jazyce Java bude využito vývojové prostředí Netbeans IDE. Pro získání konkrétních dat z hudby bude prozatím využit Matlab. Souhrn analýzy dostupných řešeníSoučasné přehrávače hudby nabízí mnoho způsobů vizualizace hudby. Ve většině případů je vizualizace založena na pulzování symetrických obrazců do rytmu hudby a částicových efektech, které sice na první pohled vytvářejí působivé obrazce, ale vyčíst z nich konkrétní informace je velmi složité nebo zcela nereálné. Z tohoto důvodu jsme se rozhodli vytvořit jednodušší model, ze kterého by bylo možné vyčíst různé informace o skladbě jak během přehrávání, tak i po jejím dohrání. Navrhované řešeníZáklad vizualního modelu tvoří 3 koule, které mohou měnit svou velikost, barvu, atd. Koule jsou propojeny za sebou tak, že vytváří obdobu molekuly vody. První kulička bude reprezentovat tóninu skladby, druhá kulička reprezentuje hodnotu BPM a poslední kulička pak převládající tóny. Při přehrávání budou kuličky různě animovány, po přehrání zůstane statický obrázek/model reprezentující příslušnou skladbu. Do animace během přehrávání se mohou zařadit v rozumné míře také např. částicové efekty. Další možností, která se nabízí, je řetězení těchto základních modelů za sebe podle předem zvolené délky samplu. Celá skladba by se tak mohla rozdělit na posloupnost těchto „molekul“, čehož by se dalo využít při vyhledávání opakujících se částí skladby aj. - příklad, jak by mohl základní model vypadat (pouze pro přiblížení představy) |