JANÁČKOVA AKADEMIE MÚZICKÝCH UMĚNÍ V BRNĚ Divadelní fakulta Ateliér audiovizuální tvorby a divadla

Zefektivnění práce v kreativních softwarech pomocí nových technologií společnosti

Diplomová práce

Autor práce: Bc. Matej Hudák Vedoucí práce: MgA. Tomáš Gruna Oponent práce: Ing. Dalibor Vlašín

Brno 2021

Bibliografický záznam HUDÁK, Matej. Zefektivnění práce v kreativních softwarech pomocí nových technologií společnosti NVIDIA [Streamlining of work in creative softwares using the new NVIDIA technologies]. Brno: Janáčkova akademie múzických umění v Brně, Divadelní Fakulta, Ateliér audiovizuální tvorby a divadla, 2021. 83 stran. Vedoucí diplomové práce MgA. Tomáš Gruna.

Anotace Tato diplomová práce se zabývá možnostmi zvýšení účinnosti práce v kreativních softwarech pomocí nových technologií společnosti NVIDIA. Za asistence profesionálů, zkoumá v jednotlivých softwarech využitelnost těchto technologií, popisuje jejich výhody, nevýhody a samotný vliv na pracovní postup. Také s touto problematikou seznamuje čtenáře.

Annotation

This thesis deals with the possibilities of improving effectiveness of work with creative softwares using NVIDIA technologies. It investigates in the capabilities of these technologies under the supervision of experts. It describes advantages and disadvantages of every examined software and the influence on the working procedures. Furthermore, it acquaints the reader with this problematic. Klíčová slova software, NVIDIA, technologie, grafická karta, kreativní, film, herní, průmysl, fotka, Adobe, Premiere, Photoshop, DaVinci Resolve, OBS, vysílaní, Unreal Engine, NGX, Maxine, Broadcast Keywords software, NVIDIA, technology, GPU, graphics, card, creative, gaming, film, movie, photo, Adobe, Premiere, Photoshop, DaVinci Resolve, OBS, stream, Unreal Engine, NGX, Maxine, Broadcast

Prohlášení Prohlašuji, že jsem předkládanou diplomovou práci zpracoval samostatně a použil jen uvedené prameny a literaturu.

V Brně, dne 1.5.2021 Bc. Matej Hudák

Poděkování Na tomto místě bych rád poděkoval svým rodičům, kteří mi vytvořili vhodné podmínky pro tvorbu této práce. Po celou dobu mého studia projevovali trpělivost a vždy mě povzbuzovali.

Velké díky ale patří i panu MgA. Tomášovi Grunovi, který mi během tvorby této práce poskytoval užitečné rady a trpělivě odpovídal na mé otázky. Děkuji také všem přátelům, kolegům a známým, kteří mi k textu přispěli svými poznatky a vědomostmi.

V neposledně řade by sem rád poděkoval aj vedoucímu ateliéru audiovizuální tvorby a divadla doc. Mgr. Petrovi Francánovi a MgA. Pavlu Jiráskovi, kterých ochota a podpora mi při tvorbě této diplomové práce velmi pomohla. Obsah

1. Úvod ...... 1 2. Teoretická část ...... 2 2.1 Grafický procesor, grafická karta a jejich význam ...... 2 2.2 Základní dělení grafických karet ...... 3 2.2.1 Integrované grafické čipy ...... 3 2.2.2 Dedikované grafické karty ...... 3 2.2.3 Hybridní grafické karty ...... 4 2.3 Součásti dedikované grafické karty a konektory ...... 4 2.3.1 Jednotka pro grafické zpracování (GPU) ...... 6 2.3.2 Operační paměť videa (VRAM) ...... 6 2.3.3 Modul regulátoru napětí (VRM) ...... 6 2.3.4 Chladič ...... 7 2.3.5 Deska plošných spojů (PCB) ...... 7 2.3.6 Konektor PCI Express x16 ...... 7 2.3.7 Šest, osm a dvanáct pinové konektory ...... 8 2.3.8 Konektory pro obrazovky ...... 8 2.3.9 SLI, Crossfire a NVLink konektor ...... 8 2.4 Společnost NVIDIA a její historie ...... 9 2.5 Trh s grafickými kartami a postavení NVIDIE ...... 10 2.6 Architektury Turing a Ampere karet NVIDIA ...... 12 2.7 Technologie NVIDIA ...... 15 3. Metody použité při práci ...... 16 4. Technologie NVIDIA a jejich aplikace v kreativních softwarech ...... 16 4.1 Enkodér NVENC a dekodér NVDEC na urychlovaní práce s videem ...... 16 4.1.1 Grafická akcelerace a využití enkodéru NVENC a dekodéru NVDEC v softwaru ...... 17 4.1.2 Grafická akcelerace a využití enkóderu NVENC a dekóderu NVDEC v DaVinci Resolve 16 ...... 20 4.1.3 Využití enkodéru NVENC v Open Broadcast Software (OBS Studio) ...... 23 4.2 Raytracing v reálnem čase ...... 26 4.2.1 Software Unreal Engine 4 ...... 28 4.2.2 Unreal Engine a jeho využiti ve filmu ...... 28 4.2.3 Implementace a funkčnost raytracingu v reálnem čase v softwaru Unreal Engine ...... 29 4.2.3.4 Globální iluminace a raytracing ...... 34 4.3 OptiX Raytracing Engine ...... 37 4.3.1 OptiX, raytracing a jejich využití v softwaru Blender ...... 37 4.4 Využití technologií založených na umělé inteligenci a strojovém učení ...... 40 4.4.1 NVIDIA NGX ...... 40 4.4.2 Neurální filtry v Adobe Photoshop ...... 41 4.5 Využívání technologií založených na umělé inteligenci v softwarech pro živé vysílání...... 45 4.5.1 NVIDIA Broadcast ...... 45 4.5.2 Alternatíva s NVIDIA Maxine ...... 46 4.6 Využitelnost těchto technologií pro studenty oboru Audiovizuální tvorba a divadlo Janáčkovy akademie múzických umění v Brně ...... 48 5. Závěr ...... 50 6. Zdrojové materiály ...... 51 6.1 Seznam obrázků ...... 51 6.2 Seznam grafů ...... 52 6.3 Literární zdroje ...... 53 6.4 Internetové zdroje ...... 54 6.5 Seznam Příloh ...... 57

1. Úvod

Tato diplomová práce si klade za cíl popsat možnosti zefektivnění práce v kreativních softwarech, pomocí technologií spojených s grafickými procesory a kartami společnosti NVIDIA. Čtenáře má kromě toho seznámit s využitelností a historií grafických procesorů či karet, přiblížit jejich roli v systému ale i společnosti, vysvětlit jejich funkčnost a také v krátkosti například popsat jejich základní součásti. K jednotlivým technologiím přistupuje zvlášť, popisuje, jak fungují a jakým způsobem mohou při práci pomáhat různým profesím v prostředí například filmového, herního nebo v dalších kreativních průmyslech. Tato práce dále využitelnost těchto technologií ilustruje na příkladech z konkrétních kreativních softwarů a věnuje se například srovnání rychlosti, či efektivnosti procesů a kvality výsledného produktu bez použití dané technologie a s ní. Důležitou součástí této práce je také diskuse s profesionály v daném odvětví, kteří popisované technologie a softwary využívají při každodenní práci. Mám za to, že jejich poznatky k tomu, jak jim uváděné technologie usnadňují práci, šetří čas nebo pomáhají zlepšit vytvářený produkt, jsou vhodným měřítkem hodnoty těchto technologií, jako účinného nástroje, a nejen marketingového produktu společnosti, která je vytváří.

Při výběru jednotlivých softwarů, které jsou v této práci s danými technologiemi spojované, jsem přihlížel na jejich využitelnost v rámci studijního oboru Audiovizuální tvorba a divadlo na Janáčkově akademii múzických umění v Brně. Softwary jsou tedy vybírány tak, aby se s mnoha z nich mohli studenti tohoto oboru setkat již během studia nebo případně v budoucím zaměstnání. Poznatky z této práce jim tak mohou pomoci k získání technologických znalostí o grafických kartách, popisovaných softwarech a jejich nastaveních, které umí v budoucnu zužitkovat k efektivnější práci.

Jelikož se tato diplomová práce zabývá technologiemi, z nichž jsou mnohé na trhu velmi krátce nebo jsou k dispozici pouze v takzvaném předběžném přístupu, byly primárním zdrojem informací při jejím psaní internetové zdroje, osobní zkušenosti autora a rozhovory s profesionály v dané oblasti, které mi nabídly zejména potřebnou aktuálnost. Problém, který se však s těmito fakty spojuje, je vysoká míra subjektivity, která je nedílnou součástí informací z těchto zdrojů. Při psaní této práce jsem se proto snažil přihlížet na široké spektrum faktorů tohoto tématu a použité informace důsledně vybírat.

Je třeba uvést, že abych změnu efektivity práce dokázal ilustrovat, je praktická stránka této diplomové práce, jejíž velkou část tvoří komparace různých technologických prvků, tvořena v rámci mých kapacit a možností. Jelikož na výsledky testů, které v souvislosti s grafickými procesory v této práci provádím, mají vliv i jiné komponenty počítačových systémů, je při opakování těchto testů na různých počítačových sestavách nutné počítat s odlišnými výsledky.

1

2. Teoretická část

2.1 Grafický procesor, grafická karta a jejich význam

Jelikož se v této práci budu primárně zabývat technologiemi spojovanými s grafickými kartami a často budu pracovat s různými pojmy, které se jich budou týkat, bude vhodné na začátku vysvětlit, co to grafická karta a grafický procesor nebo čip vlastně je. Také často nazýván GPU1, je grafický procesor specializovaný čip nacházející se například v počítačích, laptopech, herních konzolích nebo mobilních zařízeních, určený zejména na vykreslování 2D a 3D objektů. Jeho vývoj však přešel od specifického jednojádrového zařízení navrhovaného a vyráběného pouze pro grafické účely, až k vysoce paralelnímu a programovatelnému vícejádrovému zařízení, schopnému zvládat mnohem obecnější výpočty, dříve typické spíše pro počítačový procesor, také často nazýván zkratkou CPU2 (McClanahan 2011). Grafický procesor je ale jen jednou součástí grafické karty. To je pojmenování pro celý kus hardwaru, který je propojen se základní deskou počítače, a kromě jiných součástek, obsahuje také například chladič a výstupy do obrazovky.

Předchůdci současných grafických procesorů v osmdesátých letech dvacátého století jednoduše transformovali zadaná trojdimenzionální data do dvoudimenzionální, ploché pixelové mřížky, kterou uživatel viděl na obrazovce. Samotné pixely jim však často posílal procesor zařízení a grafický čip měl za úkol je jen vykreslovat. Sloužil tedy na funkci, kterou dnes už vykonává samostatná část GPU nazývaná framebuffer3. Vývoj se tak časem začal soustředit na co největší odlehčení procesoru kvůli potřebě jeho výkonu na dalších operacích a do grafického čipu byly zapracovávány technologické prvky, které tyto procesy týkající se grafiky mohly provádět samy. Dnešní, moderní grafické čipy se využívají kromě počítačů a smartphonů například v autonomních částech automobilů, robotů, používají se ve vědě, či medicíně a v mnoha nadnárodních korporacích právě díky jejich obecnější možnosti aplikování a výrazném pokroku v oblastí umělé inteligence. Výkonné grafické procesory v současnosti výrazně redukují čas, který by vědcům a inženýrům zabral design zařízení, nebo analýza a diagnostika problémů. V případech, jako je například složité skládání proteinů, může jít až o měsíce ušetřeného času. Nejde však jen o to, že výsledky výzkumů jsou hotové dříve, ale právě díky pokrokům v oblasti umělé inteligence jsou vyhotoveny i s mnohem větší přesností (Peddie 2018).

Právě díky tomuto obecnějšímu zaměření moderních grafických čipů, které se stále více chovají jako víceúčelové centrální procesory, je možné hovořit o technologiích spojených s kreativními softwary. I když je největší marketingové úsilí výrobců čipů a karet stále vkládáno do produktů zaměřených na hraní videoher a tedy zábavu, nabízejí

1 Z angl. 2 Z angl. 3 Část videopaměti GPU, kde se ukládají data o pixelech před odesláním do monitoru. 2

tyto grafické karty a aktualizace jejich ovladačů stále více a více technologií pro zefektivnění práce v audiovizuální oblasti.

2.2 Základní dělení grafických karet Podobně jako téměř každý technologický segment, můžeme i grafické karty dělit na několik různých typů. To, jaký typ grafické karty se nachází v počítači, se kterým budeme pracovat, může ovlivnit nejen jeho výkon a využitelnost, ale nepřímo i efektivitu naší práce. Pro pochopení rozdílů mezi jednotlivými typy grafických karet, ale i pojmů, které budu dále v této diplomové práci využívat, v této kapitole uvedu jejich základní dělení.

2.2.1 Integrované grafické čipy Prvním typem jsou takzvané integrované grafické čipy, které v zařízení nefigurují na samostatné kartě, ale naopak jsou součástí čipu centrálního procesoru nebo základní desky. To má samozřejmě své výhody a nevýhody. Integrované grafické karty zabírají velmi málo místa, a tak se dají využít v drobné elektronice, jako například smartphonech, tabletech, tenkých laptopech nebo hodinkách. Jsou také velmi energeticky úsporné a levnější než dedikované grafické karty, nakolik se prakticky jedná jen o čip bez samostatného těla. Nevýhodou takto integrovaných GPU je sdílení operační paměti s celým systémem, respektive absence samostatné VRAM4, což se může při náročnějších procesech v daném zařízení definitivně podepsat na jeho celkovém výkonu. Integrované grafické čipy jsou tak vhodné zejména pro běžné uživatele elektroniky, kteří na svých zařízeních neprovádí náročnější operace (Hale 2018). Je však nutné podotknout, že integrované čipy se neustále zlepšují a už nyní s nimi dokážeme bez problémů přehrávat například videa v rozlišení 4K nebo hrát méně náročné hry. Podstatnou součástí této revoluce integrovaných čipů může být například i nový M1 čip od společnosti Apple, který v jednom těle kromě procesoru a grafické karty obsahuje i operační paměť systému nebo jádra dedikované na strojové učení a výpočty týkající se umělé inteligence.

2.2.2 Dedikované grafické karty

Opakem integrované grafické karty je karta dedikovaná, která je samostatným kusem hardwaru s vlastní deskou, operační pamětí, čipem, chladiči a podobně. Obecně platí, že ve většině případů poskytují dedikované karty lepší výkon než integrované grafické karty. Jsou vhodnější na graficky náročnější práci, hraní her či například výpočty umělé inteligence, protože obsahují všechny potřebné součásti přímo ve svém těle, celkový systém počítače proto zatěžují minimálně, častokrát dokonce dalším komponentům usnadňují práci. Je také velmi jednoduché dedikovanou kartu vyměnit například v případě její vady a nahradit ji novým kusem. Nakolik je integrovaná karta součástí procesoru, je její oprava nebo výměna o mnoho složitější operací. Dedikované karty mají samozřejmě i své nevýhody, například to, že jsou mnohem větší než karty

4 Viz str. 6, podkapitola VRAM 3

integrované, a tak je nelze umisťovat do většiny snadno přenosných zařízení, s výjimkou například větších a těžších laptopů určených pro kreativní práce a hraní her. Také mají větší spotřebu energie a tvoří velké množství tepla v počítačové skříni, kterou je tak nutné intenzivněji chladit (Hale 2018).

2.2.3 Hybridní grafické karty

Některé počítačové sestavy mohou obsahovat integrovaný čip na procesoru nebo základní desce a také samostatnou dedikovanou grafickou kartu. Systém tak v tomto případě může vyhodnotit, jaký výkon je potřebný pro konkrétní operaci a v případě malé vytíženosti může přepnout na úspornou integrovanou variantu a naopak. Tento systém, který nazýváme hybridní grafickou kartou, je často přítomen například v laptopech, které při čerpání energie z baterie ve snaze ušetřit co nejvíce energie využívají jen integrovanou variantu grafického čipu a po zapojení do sítě k práci připojí i dedikovanou grafickou kartu (archlinux.org 2020).

2.3 Součásti dedikované grafické karty a konektory

V předchozí kapitole jsme v krátkosti přiblížili, s jakými základními typy grafických karet se můžeme setkat. Jelikož budeme v této práci hovořit o poměrně graficky náročných softwarech, které budeme často i testovat, pro dostatečně stabilní výkon bez zásadních omezení budeme používat dedikované grafické karty.

Dedikovaná grafická karta je součástí téměř každého stolního počítače. Pokud se díváme na stroj určený pro práci nebo případně hraní her5, častokrát bude tento komponent jedním z nejdražších v celé sestavě. Nejprodávanější dedikované grafické karty pro běžné uživatele se mohou cenově pohybovat mezi vyššími stovkami a tisíci až po téměř šedesát tisíc korun. Pracovní karty, jako například ty ze série NVIDIA , se ale cenově pohybují ve stovkách tisíc.

Abychom základním procesům popisovaným v praktičtějších částech této práce mohli lépe porozumět a vyhnout se tak jejich opakovanému objasňování, v této kapitole práce přiblížíme části, z nichž se moderní grafická karta skládá a na co tyto jednotlivé části slouží. Také v ní popíšeme nejvyužívanější typy konektorů, prostřednictvím kterých umíme grafickou kartu propojit s ostatními komponentami počítače, dalšími grafickými kartami nebo monitory.

5 Předpokládáme tedy, že bude potřebovat vyšší výkon než například počítače pro kancelářskou práci. 4

Obrázek 1 Komponenty grafické karty. Zdroj: autor práce

Obrázek 2 Rozbor chladiče grafické karty. Zdroj: autor práce

5

2.3.1 Jednotka pro grafické zpracování (GPU)

Hlavním a klíčovým komponentem grafické karty je samotný grafický procesor (GPU), který je zodpovědný za všechny procesy v jejím nitru a můžeme ho přirovnat k mozku celé karty. Většinou se v grafických kartách nachází jen jeden takový procesor, avšak existují i karty s duálním GPU, nebo je v pracovních a herních sestavách možné narazit na celé dvě grafické karty, propojené mezi sebou. Tyto možnosti ale velmi populární nejsou, protože jsou mnohem dražší, rapidně zvyšují teplotu uvnitř počítačové skříně, mají vysokou spotřebu elektrické energie a navýšení výkonu není častokrát až tak markantní, aby se to vyplatilo. Jak konkrétní GPU pracuje a z čeho se skládá je dáno jeho architekturou, která je při každé sérii GPU jiná. Architektura se také samozřejmě liší podle výrobce čipu. Jelikož se v této diplomové práci zabýváme zejména výrobcem NVIDIA a jeho novými technologiemi, nejvíce směrodatnými pro nás jsou jeho nejnovější architektury Turing a Ampere. GPU obsahuje tisíce jader, které zajišťují všechny paralelní výpočty a řídí mnoho různých procesů. To, jak to dělají, je řízeno právě architekturou. Každou novou architekturou se tak výrobci snaží zajistit lepší efektivitu GPU a co nejmenší spotřebu energie.

2.3.2 Operační paměť videa (VRAM)

Dalším důležitým komponentem grafické karty je operační paměť pro video, také často nazývána VRAM nebo framebuffer. Je to součást, která slouží k úschově všech obrazových a grafických dat, které GPU využívá. VRAM je tedy prostor mezi procesorem a samotným displejem, na kterém pozorujeme výstup. Obraz, který má být poslán na displej, je nejdříve přebírán ve formě dat procesorem počítače, a tak zapsán do VRAM. Odtud putuje jako digitální signál přes například HDMI nebo Display Port kabel na samotnou obrazovku. Kapacita a rychlost přenosu VRAM tedy značně zaleží na celkovém výkonu grafické karty. Běžné nebo herní grafické karty mají kapacitu VRAM přibližně v rozmezí 4 až 12 gigabajtů. Pracovní karty, které slouží ke zpracovávání velkého počtu obrazových dat najednou, mohou mít například i 48 gigabajtovou kapacitu6. Jejich schopnost stále rychlejšího přenosu se taktéž mezigeneračně zvyšuje. Například paměti s označením GDDR5 a GDDR5X, které byly typické pro architekturu NVIDIA Pascal z roku 2016, nabízely datový tok v rozmezí 8 až 12 gigabajtů za sekundu. Paměti GDDR6X, které jsou součástí nové architektury Ampere, představené v roce 2020, dokážou přenést až 21 GB/ s.

2.3.3 Modul regulátoru napětí (VRM)

O korektní přísun napětí, který celou kartu pohání, se stará takzvaný modul regulátoru napětí, také často nazýván zkratkou VRM7. Ten redukuje vysoké napětí ze zdroje počítače na hodnoty potřebné pro správný chod karty. Ve většině případů je to redukce 12 voltového napětí na přibližně 1 nebo 1,2 V, které karta potřebuje. Pro

6 Pracovní grafická karta NVIDIA RTX A6000 obsahuje 48GB GDDR6 pamět. 7 Z angl. Voltage Regulator Module 6

správnou funkci celé karty je velmi důležité, aby byl tento přísun konzistentní, stabilní a nesmí být vyšší než její voltáž. Kvůli přijímání vysokého napětí, jeho redukci a přerozdělování, bývá VRM velmi zahříván a v některých případech vyžaduje i pasivní chlazení pomocí takzvaných Heatsinků8.

2.3.4 Chladič

Každá dedikovaná grafická karta má svůj chladič, jehož úkolem je držet teploty všech jejích součástí, tedy čipu, operační paměti a regulátoru napětí, v bezpečných hodnotách. Pokud by karta chlazená nebyla, nebo by chladič selhal, zasáhnout by musel tepelný omezovač, který by kartu před kritickou hodnotou vypnul, v opačném případě by se přehřála a shořela. Právě chladič je totiž častokrát to, co při pohledu na grafickou kartu vidíme, protože zakrývá téměř celou desku, na níž jsou další části. Chladiče známe aktivní a pasivní. Aktivní chladič obsahuje ve většině případů již v předešlé kapitole uváděn Heatsink a ventilátor, případně několik ventilátorů. Pasivní chlazení je prováděno pouze Heatsinkem, tedy systémem, který využívá fyzikální vlastnosti materiálů na odvádění tepla. Jeho výhodou je zcela tichý chod, protože neobsahuje žádné pohyblivé součásti. Většina karet dnes však obsahuje aktivní chlazení, nakolik je to efektivnější způsob, a navíc zabírá méně místa v počítačové skříni. Je ale samozřejmě o něco dražší na výrobu, a tak pasivní chlazení můžeme najít stále v případech výkonnostně slabších a levnějších grafických karet. Velmi zřídka používanou možností aktivního chlazení je při grafických kartách i chlazení vodou. Protože obsahuje jen uzavřené čerpadlo, je podobně jako pasivní chlazení velmi tiché. Voda má navíc lepší tepelnou vodivost než vzduch, a tak dokáže být při chlazení o něco efektivnější (engineeringtoolbox.com). Nevýhodou vodního chlazení je nepochybně jeho cena, která se pohybuje v násobcích toho vzduchového a také mu do karet nehraje fakt, že vzduch valnou většinu karet jednoduše zvládá bez problémů ochladit.

2.3.5 Deska plošných spojů (PCB)

Deskou plošných spojů, nebo zkratkovitě PCB9 označujeme samotnou základní desku na které jsou umístěny všechny komponenty grafické karty včetně čipu, konektorů, či senzorů. Velikost této desky se liší při každé kartě, v závislosti na počtu a velikosti její komponentů, a tedy při výkonnějších grafických kartách zvykne být výrazně větší než u těch slabších.

2.3.6 Konektor PCI Express x16

PCI Express x16 je konektor, který zajišťuje komunikaci mezi grafickou kartou a základní deskou počítače. Ty jich většinou poskytují několik, a to v různých šířkách, k

8 Heatsink je pasivní chladič, který je umisťován na některé komponenty počítače. Teplo odvádí pomocí skupiny kovových tyčí. Viz str. 7, kapitola Chladič 9 Z angl. Printed Circuit Board 7

zapojení nejen grafické, ale například i síťových karet nebo RAID10 karet. PCI Express x16 konektory poskytují maximální přísun 75 Wattů, což stačí na slabší grafické karty, ale ty náročnější potřebují dodatečné napájení ze zdroje11. PCI Express konektory se mezigeneračně liší. Jeho nadcházející šestá generace má poskytovat datový tok až o rychlosti 128 gigabajtů za sekundu, což komponentům pochopitelně umožní rychlé zpracovávání datově obsáhlejších materiálů (Armasu 2019).

2.3.7 Šest, osm a dvanáct pinové konektory

Šest pinový napájecí konektor se nachází na o něco výkonnějších grafických kartách, kterým nestačí základní 75Wattové napájení pomocí PCI Express x16 konektoru. 6 pinový konektor poskytuje přenos dalším 75 Wattům, a tak může činit spotřeba takové karty maximálně 150 Wattů. Ještě výkonnější grafické karty mohou k 6 pinovému konektoru obsahovat i další 8 pinový, který jí dohromady s ostatními umožňuje čerpat 300 Wattů, nakolik 8 pin sám dokáže přenést 150 Wattů (Verma 2020). Nejnovější grafické karty od společnosti NVIDIA řady RTX30 a konkrétně nejvyšší model RTX 3090 obsahuje kvůli své vysoké spotřebě energie dokonce až 12 pinový konektor. Po určitých modifikacích a přetaktování, může totiž RTX 3090 potřebovat na svůj chod při zátěži až více než 500 Wattů elektrického výkonu (Alderson 2020).

2.3.8 Konektory pro obrazovky

Všechny grafické karty obsahují výstupní konektory, prostřednictvím kterých je lze propojit s displejem počítače. Těchto konektorů je několik typů, avšak mezi ty nejpoužívanější patří dnes například Display Port (DP), který dokáže přenést signál ve vysokém rozlišení a s velkou obnovovací frekvencí. Je tak nejvhodnější volbou při profesionální práci s audiovizuálním materiálem nebo při hraní her. Často používaný je také konektor HDMI12, který je plně dostačující při menších rozlišeních a obnovovacích frekvencích, avšak pokud potřebujeme přenést obsáhlejší signál, naráží HDMI na větší limitace než Display Port, i když nejnovější generace obou z nich vědí přenášet až 8K rozlišení. Na některých starších kartách můžeme najít i například DVI13 port, který však již díky své technologické zastaralosti bývá nahrazován právě dvěma výše zmíněnými porty DP a HDMI.

2.3.9 SLI, Crossfire a NVLink konektor

Konektory SLI a NVlink při kartách značky NVIDIA nebo Crossfire při kartách od společnost AMD slouží k propojení více stejných grafických karet v jedné počítačové sestavě. Umožňují tak na úkor ceny, vyšší spotřeby a teploty uvnitř počítačové skříně,

10 RAID je anglická zkratka pro redundantní pole nezávislých disků. RAID karta je komponent, který zajišťuje jejich komunikaci 11 Viz str. 8, podkapitola Šest, osm a dvanáct pinové konektory 12 Z angl. High Definition Multimedia Interface 13 Z angl. Digital Visual Interface 8

zvýšit výkon počítače, pokud nám jedna karta na naši práci nepostačuje. Technologie NVlink díky možnostem rychlejšího přenosu většího množství dat, plynule nahrazuje při grafických kartách NVIDIA svého předchůdce SLI (Cosic 2020). Například nejnovější grafické karty architektury Ampere lze propojit již pouze prostřednictvím NVlinku.

2.4 Společnost NVIDIA a její historie

Pro potřeby této práce jsem se rozhodl zaměřit pouze na technologie a grafické karty, které nabízí společnost NVIDIA, jelikož ty jsou v kreativní a celkově pracovní sféře v současnosti jednoznačným lídrem14. K lepšímu teoretickému ukotvení tohoto tématu, v následující kapitole v krátkosti popíši historii a klíčové milníky této společnosti, které pochopitelně souvisí s jejím aktuálním postavením.

Společnost NVIDIA se věnuje výrobě grafických čipů na herní a profesionální účely již 28 let. V roce 1993 ji založili tři elektroinženýři Curtis Priem, Chris Malachowsky a Jen-Hsun Huang, který je výkonným ředitelem NVIDIE dosud. Hned v rok založení, začala NVIDIA pracovat na svém prvním grafickém akcelerátoru s názvem NV1, schopném vykreslovat 2D a 3D počítačovou grafiku. Tento produkt se stal základem herní konzole Sega Saturn představené v roce 1995, ale jak se ukázalo později, jeho nedostatkem bylo kromě vysoké ceny i využívání kvadratických ploch jako základní geometrické jednotky, namísto zaužívaných polygonů, na kterých bylo v té době postavené i například rozhraní DirectX určené pro videohry od společnosti Microsoft (Sexton, Guerrini, Dandumont 2018). K využívání polygonů NVIDIA přešla po zrušeném vývoji NV2, tedy při práci na čipu NV3, který představila v roce 1997 a za první čtyři měsíce z něj prodala jeden milion kusů. Následující rok 1998 byl pro NVIDIA klíčový z hlediska strategického partnerství se společností TSMC, která se stala asistentem při výrobě jejich grafických čipů. V roce 1999 představila NVIDIA první jednočipový procesor GeForce 256, který poprvé nazvala jednotkou pro grafické zpracování (GPU)15 a také první profesionální kartu třídy Quadro. V témže roce vstoupila NVIDIA na burzu NASDAQ s cenou 12 dolarů za akcii16. Na přelomu tisíciletí odkoupila NVIDIA i většinu společnosti 3dfx, která od roku 1994 stála za vývojem mnoha populárních grafických čipů (Smith 2018). O rok později se grafický čip NVIDIA NV2A a audio hardware MCPX staly klíčovými komponenty v první verzi herní konzole od společnosti Microsoft. V roce 2004 představila NVIDIA technologii SLI17, jejímž prostřednictvím je možné propojit dvě grafické karty v jednom počítači, což umožnilo jistý výkonnostní skok při náročnějších operacích. Také se ve spolupráci s NASA na základě dat z Mars Roveru podařilo NVIDII zrekonstruovat povrch Marsu v 3D virtuální realitě pro vědecké účely. O rok později se jejich grafické technologie staly součástí herní konzole Sony PlayStation 3 a v roce 2006 bylo představeno rozhraní CUDA pro využití grafického čipu na obecné výpočty, u kterých byl dosud využíván zejména výpočetní výkon procesoru. V

14 Viz str. 10, kapitola Trh s grafickými kartami a postavení NVIDIE 15 Z angl. Graphics processing unit 16 K prosinci 2020 má akcia NVIDIE hodnotu více než 530 dolarů. 17 Viz str. 4, kapitola Součásti dedikované grafické karty a konektory 9

časovém rozmezí od roku 2007 až do roku 2011 se NVIDII podařilo například vydat mobilní procesor pohánějící zejména přenosné počítače a smartphony, také navázat spolupráci se společností Apple, jejíž některé z laptopů Macbook Pro a Macbook Air poháněl čip GeForce 9400M, nebo kooperovat na projektu nejvýkonnějšího superpočítače na světě Tianhe-1A a oslavit jednu miliardu prodaných grafických procesorů. V období 2010 až 2012 si NVIDIA také pravidelně připisovala úspěchy za vizuální efekty v kinematografii, což dokládá fakt, že všechny filmy oceněné na Academy Awards za vizuální efekty v tomto období, byly tvořeny s pomocí grafických technologií NVIDIA. V roce 2012 prošla NVIDIA na 28 nanometrový výrobní proces čipů, což udělalo novou architekturu Kepler mnohem efektivnější od té předchozí, zvané Fermi. Kepler tak mohla obsahovat třikrát více CUDA jader, což zvyšovalo její výkon o deset až třicet procent v závislosti na softwaru (Sexton, Guerrini, Dandumont 2018). Následující architektura Maxwell byla opět dalším posunem na poli výkonu a efektivity, nakolik obsahovala například nový kompresní algoritmus, umožňující lepší využití dostupného přenosového pásma. O dva roky později byla představena poslední architektura produkující grafické karty se známým přívlastkem GTX18, obsahující jen CUDA jádra, a to architektura Pascal. V září 2018 na konferenci GTC představil výkonný ředitel NVIDIE Jen-Hsun Huang architekturu Turing, obsahující CUDA a dedikované Tenzor a RT jádra, spolu s prvními kartami s pojmenováním RTX, dostatečně výkonnými na převádění raytracingu v reálném čase19. Doposud poslední veřejnosti představenou sérií je takzvaná RTX 30, založená na architektuře Ampere z roku 2020 (NVIDIA 2020).

2.5 Trh s grafickými kartami a postavení NVIDIE

Evoluce grafických čipů z poměrně jednoduchých rozhraní na zobrazování videa, až k obecně zaměřeným výpočetním jednotkám se pochopitelně odrazila i na jejich poptávce, která neustále roste. Globální trh s GPU byl za rok 2019 ohodnocen na bez mála 20 miliard dolarů. Analytici a obchodní experti předpokládají, že tato hodnota do roku 2027 naroste o dalších 180 miliard. V současnosti na trhu dominují integrované grafické čipy, které své využití nacházejí v mnoha přenosných elektronických zařízeních, jakými jsou například smartphony, tablety, či laptopy a očekává se, že tento trend se několik dalších let měnit nebude, protože podobná zařízení jsou určeny velmi širokému spektru populace. Růst je však očekávaný i na poli dedikovaných karet, které jsou určeny pro náročnější výpočty a stále více se využívají napříč všemi průmyslovými odvětvími (Rake 2020).

18 Označení GTX se objevilo ještě jednou v roce 2019 na kartách nízkorozpočtové série GeForce 16, avšak již šlo o čipy založené na architektuře Turing 19 Viz str. 26, kapitola Raytracing v reálnem čase 10

Mezi obchodníky s dedikovanými grafickými kartami si drží dlouholeté prvenství právě společnost NVIDIA (Peddie 2020). Její přímým konkurentem je v tomto segmentu společnost Advanced Micro Devices (AMD), která se však na výrobu grafických čipů začala orientovat až v roce 2006, kdy odkoupila firmu ATI Technologies (Talevski 2010). Z dostupných dat analýzy za druhý kvartál roku 2020, můžeme vyčíst, že i když se zejména díky pandemii koronaviru v prodejích dařilo oběma těmto společnostem, NVIDIA si byla schopna polepšit oproti prvnímu kvartálu o dalších 5 procent, a tak jí momentálně na tomto trhu patří až 80 procent podílu, přičemž zbývajících 20 procent zastává AMD.

Obrázek 3 Podíl na trhu v oblasti grafických čipů. Zdroj: Jon Peddie Research

Analýza důvodů pro tento stav na trhu je velmi obsáhlým a složitým tématem, ke kterému mají obě společnosti a jejich přívrženci pochopitelně protichůdné závěry. Řídit se proto v této problematice nemůžeme jejich často emočně zabarvenými vyjádřeními, které si vyměňují již od devadesátých let minulého století, ale musíme se spolehnout na fakta a data od nezávislých zdrojů.

Důvod proč se v této práci věnujeme právě technologiím od společnosti NVIDIA, je jedním z předmětů tohoto odvěkého konfliktu, nakolik můžeme tvrdit, že při práci v kreativních softwarech se nám při současné situaci dedikovaný čip od AMD vlastnit prostě nevyplatí. NVIDIA totiž spolupracuje s drtivou většinou společností, které tyto postprodukční, grafické a další tvůrčí softwary vyvíjí, a pomáhá jim při implementaci velké části prvků orientovaných na výpočty grafickou kartou, které následně optimalizuje na své čipy. Když se podíváme na výkonnostní srovnání běžných spotřebitelských karet ale i těch určených na složitější práci, ve většině případů povede opět i když těsně NVIDIA. Co se týče různých technologií, které ke grafickým kartám vytvářejí jakousi přidanou hodnotu, jako například možnost inteligentního zvyšování rozlišení v hrách nebo synchronizace obnovovací frekvence monitoru s grafickou kartou, tak vidíme, že se obě společnosti různé dohánějí, avšak za poslední léta je i v tomto segmentu na koni NVIDIA (Walton 2020). Výsledky trhu jsou tak pochopitelné, i když AMD nabízí častokrát podobně výkonný čip za cenu i o třetinu menší než konkurence, dosud nedokáže 11

konkurovat úrovni vývoje a síti, kterou má NVIDIA vytvořenou mezi poskytovateli a vývojáři softwarů.

2.6 Architektury Turing a Ampere karet NVIDIA

Klíčovým prvkem, umožňujícím akumulovat dostatečný výpočetní výkon na efektivní využívání většiny technologií uváděných v této práci, jsou dvě nejnovější architektury grafických karet od společnosti NVIDIA. I když jsou některé z těchto technologií známy již několik let, jejich optimalizace na nové typy jader těchto architektur a podpora obsažena v aktualizacích jim umožňuje otevírat nové cesty k zefektivnění či usnadnění práce.

Jako první z nich byla v roce 2018 představena architektura Turing, nesoucí jméno slavného britského matematika a fyzika Alana Turinga. Tato série karet s označením GeForce RTX přímo nahradila předcházející, na trhu méně zastoupenou architekturu Volta a frekventovanější využívanou architekturu Pascal, obsaženou například v modelech karet GeForce GTX série 10, představené v roce 2016. V září roku 2020 však NVIDIA už představila druhou generaci karet RTX, disponující ještě inovativnější architekturou s názvem Ampere.

Za největší mezigenerační skok však nadále považujeme náhradu Pascalu Turingem z roku 2018, protože jeho nový streaming multiprocesor oproti svému předchůdci z architektury Pascal vykazuje přibližně o polovinu větší výkon na jedno CUDA jádro a citelně tak zvyšuje efektivitu shaderů20. To je umožněno zejména díky přidání nové datové přenosové cesty, jejímž prostřednictvím mohou operace původně prováděny jednotlivě například ve starší architektuře Pascal, probíhat při Turingu současně. Generační pokrok nastal i v případě architekturou podporované operační paměti. Nová paměť s označením GDDR6 oproti svým předchůdcům GDDR5 a GDDR5X posunula hranice přenosu množství dat až na 14 gigabitů za sekundu a zlepšila energetickou účinnost o přibližně 20 procent (Kilgariff, Moreton, Stam, Bell 2018). Nejsignifikantnějším a ke mnou probírané problematice jsou však jedním z nejdůležitějších vývojových prvků nově přidaná jádra do procesoru architektury Turing. Těch je v novém streaming multiprocesoru hned několik typů, z nichž má každé přidělené své specifické operace. Architektura Turing tak disponuje třemi typy jader, a to takzvanými CUDA, RT a Tensor jádry, přičemž například předchozí architektura Volta obsahovala jen CUDA či Tenzor jádra a Pascal disponuje dokonce pouze jedním typem z jmenovaných, a to CUDA jádry.

20 je soubor softwarových instrukcí, který slouží k řízení efektů renderingu (Your dictionary) 12

Obrázek 4 Porovnání architektury Pascal a Turing. Zdroj: NVIDIA

Jádra CUDA představila veřejnosti společnost NVIDIA již v roce 2007, kdy se stala poprvé součástí grafické karty s označením GeForce 8800 GTX, založené na architektuře Tesla. Jelikož tehdy CUDA jádra reprezentovaly revoluci ve výpočetních možnostech, stali se od tohoto momentu základem pro všechny další karty, respektive jejich architektury až do dnes. Bylo to tehdy poprvé, co architektura obsahovala komponenty vyvíjené striktně pro grafické výpočty, čímž se eliminovala mnohá dříve vznikající omezení kvůli obecnějšímu zaměření starších grafických procesorů (Sanders, Kandrot 2011). CUDA jádra pracují na základě mechanismu, kdy každé jedno jádro provede pouze jeden výpočet za otáčku grafické karty. Důležitou roli vzhledem k výkonu proto při jejich využívání hraje takt samotné karty a počet CUDA jader v ní (Boudreau 2019). Například grafická karta GeForce GTX 1080Ti, na trh uvedena v roce 2017, obsahovala 3584 CUDA jader. Dosud nejvýkonnější karta pro běžné uživatele, představena v roce 2020 s označením RTX 3090, jich obsahuje až 10496. Tenzorová jádra jsou dalšími výkonnými jednotkami, jejichž první generace byla původně představena ještě v roce 2013 jako součást architektury Volta. Ta se však součástí reálného produktu na trhu stala až v roce 2017 a běžní konzumenti se pravděpodobně setkali až s druhou generací Tenzorových jader, obsažených v na trhu rozšířenější architektuře Turing z roku 2018. Rozdíl tenzor jader oproti jádrům CUDA je v první řadě jejich zaměření na jiný typ operací. Tenzor jádra se specializují na výpočty týkající se umělé inteligence, jejíž schopnosti rozšiřují a jako první umožňují například využití takzvaného Deep learningu21 v reálném čase (Kilgariff, Moreton, Stam, Bell 2018). Rozdílný je také jejich výpočetní výkon, respektive schopnost výpočtu celé 4x4 matrice za otáčku. Společnost NVIDIA (2018) uvádí, že rychlost tenzorů je přibližně dvanáctinásobkem rychlosti CUDA jader. Turingová, druhá generace tenzor jader oproti své první přinesla navíc takzvané módy přesnosti INT4 a INT8 a třetí generace v

21 Viz str. 40, kapitola Využití technologií založených na umělé inteligenci a strojovém učení. 13

architektuře Ampere z roku 2020 zdvojnásobila počet datových cest, díky čemuž je poskytováno provádět operace ještě rychleji a s větší přesností.

Obrázek 5 Vizualizace mezigeneračního rozdílu Tenzorových jader. Zdroj: NVIDIA

Třetím typem jader přítomných v architektuře Turing jsou jádra označována zkratkou RT, tedy raytracing jádra, zaměřená na specifické operace týkající se sledování světelných paprsků. Právě díky jejich technologii již není nutná náročná softwarová emulace chování světelných paprsků při využití technologie raytracing a jádra RT tak dokážou zajistit světelně realistické vykreslení scény s realitě podobnými stíny, odrazy a refrakcemi v reálném čase (Kilgariff, Moreton, Stam, Bell 2018).

Jak jsem v této kapitole již objasnil, největším technologickým pokrokem oproti svému předchůdci je generace karet s označením GeForce RTX, postavená na architektuře Turing z roku 2018. Na tento poměrně velký pokrok, přidání tenzor a RT jader, nebo vývoj nového procesoru, vynaložila za 7 let vývoje NVIDIA velké množství lidských a finančních zdrojů, což se pochopitelně odrazilo i na spotřebitelské ceně jednotlivých modelů. Druhá RTX Generace, postavená na architektuře Ampere z roku 2020, však dokázala opět mezigeneračně o něco zvýšit výkon čipu, přičemž cena grafické karty pro spotřebitele výrazně klesla. To bylo umožněno zejména změnou technologie výroby čipů z původních 12 nanometrů společnosti TSMC na 8 nanometrů od společnosti Samsung, ale samozřejmě i dalšími faktory vývoje, jako například nové, výrazně rychlejší operační paměti GDDR6X (Stanek, 2020). Výkon minulo generační GeForce RTX 2080Ti, jejíž počáteční cena byla v roce 2018 na 1200 dolarech, je u nové generace Nvidia schopna nabídnout v modelu GeForce RTX 3070 a to za počáteční cenu necelých pět set dolarů.

14

Obrázek 6 Graf vizualizujíc poměr výkonu a ceny nové generace karet RTX30 s architekturou Ampere. Zdroj: NVIDIA

2.7 Technologie NVIDIA

Kromě designu grafických čipů a samotných karet, ať už pro pracovní nebo zábavní účely, se společnost NVIDIA věnuje i jejich přímému využití a pracuje na vývoji různých technologiích, které jsou kromě automobilového, zdravotnického či například průmyslu informačních technologií využitelné i v mediálním, filmovém a herním průmyslu. Častokrát je navíc ve vytváření takové přidané hodnoty o krok napřed před svou konkurencí, což jí výrazně na pomáhá k udržení si postavení na trhu. Právě těmto technologiím, aplikovatelným v kreativních průmyslech se budeme věnovat v dalších částech této práce.

Několik z nich je na trh uváděných jen jako takzvané API22, tedy programovací rozhraní, nebo SDK23, tedy nástroj pro vývojáře, které je následně možné implementovat do jednotlivých softwarů prakticky nezávisle na Nvidii. Druhým způsobem, který vidíme NVIDIA často využívat také například k marketingovým účelům, je spolupráce s mnoha výrobci softwarů, se kterými pravidelně spolupracuje a podílí s nimi se na implementací svých technologií do jejich rozhraní.

V následujících kapitolách této práce se podívám na několik z těchto technologií a možností jejich využití v softwarech na tvorbu 2D a 3D grafiky, střih videa, živého vysílání či například tvorby virtuálních scén.

22 Z angl. Application programming interface 23 Z angl. Software development kit 15

3. Metody použité při práci

V úvodu každé z kapitol věnovaných jednotlivým technologiím popisuji jak a k čemu daná technologie slouží či kde nachází své využití. Avšak k dosažení cíle této diplomové práce, který jsem si stanovil v jejím úvodu, bych měl postupovat na základě přesně vymezených metod. To je však v tomto případě trochu problematické, protože se mnou popisované technologie liší svou podstatou a není možné na všechny z nich použít jakousi obecnou metodu. Níže popsaných metod se tak budu držet ve většině, avšak ne ve všech případech.

První z využitých je metoda nazývaná komparativní analýza, kterou můžeme definovat jako metodu porovnávání dvou nebo více zkoumaných předmětů. V mém případě tak jde o porovnávání výsledků, kterých ve zkoumaných softwarech dosáhneme s využitím jednotlivých technologií a při využití jiných alternativ dostupných v daném softwaru. Pomocí srovnávací analýzy tak dokážu identifikovat rozdíly v práci, klady a zápory jednotlivých technologií a vytvořit si obraz o jejich funkčnosti.

Druhou mnou využívanou metodou pro získání potřebných závěrů je analýza rozdílů v tvůrčích postupech při využívání těchto technologií v kreativních softwarech. Tuto metodu z velké části provádím pomocí osobních zkušeností profesionálů z odvětví, kterých se daná technologie týká. Ve formě rozhovorů popisují, v čem se zlepšil nebo případně zhoršil jejich pracovní postup v daném softwaru, jakými způsoby danou technologii využívají nebo jaká změna či aktualizace by jim mohla pomoci.

4. Technologie NVIDIA a jejich aplikace v kreativních softwarech

4.1 Enkodér NVENC a dekodér NVDEC na urychlovaní práce s videem Architektura grafických karet, nesoucí jméno známého německého astronoma a fyzika Johannese Keplera, představena v roce 2012, obsahovala jako první z karet NVIDIA nový enkodér s názvem NVENC a dekodér NVDEC, které jsou samostatnými a nezávislými součástmi grafické karty a jsou dedikované přímo na enkódování a dekódování videa. Při jejich využití v těchto procesech na sebe dokážou převzít výpočetní zátěž a ulevit tak obecněji zaměřenému procesoru nebo samotnému grafickému čipu, které se tak mohou věnovat jiným současně probíhajícím úlohám. V současnosti disponují nejnovější grafické čipy architektury Ampere už sedmou generací enkodéru NVENC a pátou generací dekodéru NVDEC. Mezigenerační rozdíly tvoří kromě pokroku v technickém řešení zejména nabídka podporovaných kodeků a barevné hloubky. Zatímco první generace NVENC podporovala enkóding jen kodeku H.264 při barevném vzorkování 4:2:0, sedmá generace už dokáže enkódovat obojí H.264 a H.265 až do rozlišení 8K, při vzorkování 4:4:4 a s podporou 10 bitové barevné hloubky. Dekodér 16

NVDEC v své první generaci podporoval kodeky MPEG-1, MPEG-2, VC-1 a H.264. Jeho pátá a dosud poslední generace podporuje kromě již jmenovaných také kodeky VP8, VP9 či H.265 při barevném vzorkování 4:2:0 a 4:4:4 s až 12 bitovou barevnou hloubkou a kodek AV1 při hloubce 10 bit (Nvidia 2020). I při značných mezigeneračních pokrocích, enkodér NVENC a dekodér NVDEC zatím podporují relativně malé omezené množství kodeků, z nichž je navíc většina silně kompresní, a tak můžeme říci, že dosud nepomohou při práci v závěrečné fázi s profesionálním, filmovým video materiálem a jeho finálním výstupem. Na stranu druhou, pokud bychom se věnovali videu určenému pro web, sociální sítě, živému vysílání, nebo bychom potřebovali vyexportovat náhled naší práce, měl by Nvidia enkodér a dekodér naši práci zefektivnit. V následujících kapitolách se proto podíváme na jejich aplikaci ve vybraných softwarech a provedeme srovnávací analýzu, pomocí které získáme data na potvrzení, nebo vyvrácení této hypotézy.

4.1.1 Grafická akcelerace a využití enkodéru NVENC a dekodéru NVDEC v softwaru Adobe Premiere Pro Software Premiere Pro představila společnost Adobe poprvé v roce 2003, kdy nahradil původní software Premiere z roku 1991. V současnosti je to jeden z nejpoužívanějších programů sloužících k postprodukci videa a filmu na světě. Nakolik je na zpracovávání video materiálu v co jednou vyšším rozlišení a s větším obsahem surových dat potřebný vyšší výpočetní výkon, Adobe v rámci své spolupráce s NVIDIí v roce 2011 představili aktualizaci do Adobe Premiere Pro CS5, přinášející takzvaný Mercury Playback Engine (MPE). MPE umožňuje softwaru využívat právě výpočetně sílu grafického čipu pomocí programového rozhraní CUDA a při zpracování videí, či složitějších videoefektů dokáže rozložit zátěž mezi jednotlivé komponenty počítače k urychlení procesů. Pro ilustraci toho, proč je tato aktualizace pro práci s videem v Premiere Pro zásadní, je nutné pochopit rozdíl mezi prací procesoru (CPU), který byl do roku 2011 primárním prvkem pro výpočty v Premiere Pro a grafického čipu (Stam2020). Jádra procesoru jsou totiž při zpracování videa přizpůsobená pro extrémně rychlé vykreslení pixelů jednoho pro druhém, ale grafický čip je naopak navržen tak, aby dokázal zpracovávat velký počet dat najednou (Stam 2020). Například jeden snímek videa v rozlišení 4K obsahuje téměř devět milionů pixelů, které jsou na sobě nezávislé a hodnotu každého jednoho z nich lze počítat bez ohledu na ten vedlejší. Jelikož při zpracovávání takto objemného videa potřebujeme pro plynulou práci vidět vykreslených v ideálním případě 25 celých snímků za sekundu, je pro nás metoda zpracování grafickým čipem vhodnější. Díky Mercury Playback Enginu a dostupnosti stále výkonnějších komponentů, které Adobe ve spolupráci s výrobci karet optimalizuje, dokážeme v reálném čase pracovat se surovými obrazovými daty ve stále vyšších rozlišeních a vysokých počtech snímků za sekundu, či například komplikovanějšími efekty virtuální reality. Problémem, který však po aplikaci MPE do Premiere Pro stále přetrvával, bylo odebírání výpočetní síly procesoru a grafickému čipu při práci s videem. Na jeho odklon byly Nvidii vyvinuty právě NVENC a NVDEC.

17

Podporu enkodéru NVENC přinesla verze Premiere Pro 14.2 v květnu 2020. S jeho pomocí je při enkódování videa do určitých kodeků zmenšená zátěž na procesor či grafický čip a tak je jednak urychlen proces enkódování, ale také je možné paralelně využívat výkon těchto komponent na jiné úkony. Zrychlení přehrávání videomateriálu během práce v Adobe Premiere Pro umožňuje dekodér NVDEC od Října 2020, kdy se jeho podpora stala součástí nového Nvidia Studio ovladače.

Obrázek 7 Schéma fungováni dekóderu NVDEC a enkodéru NVENC. Zdroj: Nvidia

Jako vzorek pro otestování účinku enkodéru NVENC na export videa jsem si zvolil 3 minuty a 40 sekund dlouhé video ze zdrojového materiálu v poměru 79 procent Full HD 1080p materiálu a 21 procent videa v rozlišení 4K, které jsem exportoval do rozlišení 1080p a kodeku H.264 při datovém toku 15Mbps. Na video bylo aplikováno několik efektů, jako například oříznutí či stabilizace a také jednoduché barevné korekce. PC sestavu, na níž bylo video renderované, tvořil osmijádrový procesor AMD Ryzen 7 3700x se základní frekvencí 3,6 GHz, grafická karta architektury Turing - NVIDIA GeForce RTX 2080 Super a 16GB operační paměti. Každý test jsem provedl několikrát a výsledky zprůměroval. První test proběhl při zapnutém Mercury Playback Engine a hardwarovém enkódingu s pomocí technologií NVIDIA, tedy i enkodéru NVENC. Během celého procesu byl grafický čip vytížen průměrně na 30 procent a procesor na přibližně 25 procent. Nejvíce využívaný byl právě enkodér, jehož využití se pohybovaly mezi 30 až 40 procenty. Celkový čas enkódingu videa při těchto podmínkách byl 1 minuta a 26 sekund. Při druhém testu jsem namísto hardwarového enkódingu vybral softwarové enkódování, avšak stále jsem nechal zapnutý Mercury Playback Engine. Výkon se tedy i zde mezi komponenty přerozdělil a celkový čas renderingu byl v tomto případě jedna minuta a 39 sekund. Při posledním renderu jsem nechal zátěž vytvořenou renderingem tohoto videa pouze na procesoru. Vypnul jsem tedy Mercury Playback Engine a nechal

18

zaškrtnutý softwarový enkóding. Procesor byl během renderingu vytížen průměrně na 98% a vyexportovat celé video mu trvalo 6 minut a 33 sekund.

Porovnání času při renderingu videa s GPU akcelerací a bez ní v Adobe Premiere Pro Softvérové enkódovování + CUDA

Softvérové enkódování (jen CPU)

Hardvérové enkódování + CUDA

0 1 2 3 4 5 6 7

čas enkódování v sekundách (kratší je lepší)

Graf 1 Porovnání času při enkódingu videa s GPU akcelerací a bez ní v Adobe Premiere Pro

Na základě provedených testů můžu konstatovat, že využívání výkonu grafické karty při renderingu v Adobe Premiere Pro dokáže samotné exportování urychlit až o více než 70% ve srovnání s renderingem pouze přes procesor. Navíc v tomto případě dokáže stáhnout mnoho zátěže z procesoru a rovnoměrně ji mezi komponenty rozložit. Procesor se tak může věnovat dalším operacím v systému. Menší, ale přece značný, nárůst můžeme vidět i při renderování s enkodérem NVENC a bez něj, tedy pouze s pomocí CUDA jader grafické karty, který tvoří něco málo přes 15%. Pokud bych tedy v Adobe Premiere Pro pracoval na složitějším projektu, který bych exportoval dvě hodiny, ušetřil bych s pomocí enkodéru NVENC přibližně 18 minut času.

K ilustrovaní vlivu výše zmíněných technologií v softwaru Adobe Premiere Pro na práci v jeho prostředí, jsem uskutečnil online rozhovor s ředitelem studentské televize Studex TV na Masarykově Univerzitě, Petrem Uhlířem, který Adobe Premiere Pro využívá k postprodukci vysílaných programů. Tento rozhovor se uskutečnil dne 29. listopadu 2020.

Mercury Playback Engine, a tedy akceleraci CUDA s grafickou kartou NVIDIA, využívá Uhlíř vždy, když v Premiere Pro pracuje. „Při střihu o cosi rozsáhlejších dílů našich programů, kde používáme i animovanou grafiku a složitější efekty je využití GPU přímo nutností. Co se týče enkodéru a dekodéru NVENC a NVDEC, o jejich využití jsem slyšel už dříve v konkurenčních softwarech, avšak musím přiznat, že na můj vkus jejich implementování do Premiere Pro trvalo Adobe a NVIDII velmi dlouho. Od aktualizace, která je podporuje jsem mírně zrychlení přehrávání materiálu a exportování zaznamenal, avšak bylo by pro mě ještě o mnoho užitečnější, kdyby NVENC podporoval více kodeků

19

než jen H.264 a H.265. V tomto stavu je to podle mě naplno nevyužitý potenciál velmi dobré technologie,“ říká Petr Uhlíř.

4.1.2 Grafická akcelerace a využití enkóderu NVENC a dekóderu NVDEC v DaVinci Resolve 16 DaVinci Resolve je počítačový software na postprodukci videí a filmů, který umožňuje jejich střih, tvorbu vizuálních efektů, barevné korekce či zvukovou postprodukci. Jeho historie započala v osmdesátých letech dvacátého století, kdy společnost da Vinci Systems představila první verzi da Vinci Resolve jako nelineárního24 postprodukčního softwaru založeného zejména na výpočetním výkonu grafického čipu, s důrazem na kolorování digitálního filmu. V roce 2006 odkoupila tento software společnost Blackmagic, která pod svou hlavičkou vydává už jeho sedmnáctou verzi. Velkou konkurenční výhodou pro DaVinci Resolve je to, že jeho základní verze umožňující jednoduchý střih videa ve Full HD 1080p a kolorování materiálu s nižší barevnou hloubkou je dostupná zdarma. Placená verze DaVinci Resolve s přívlastkem Studio, obsahuje kromě možnosti práce na časové ose s vyšším rozlišením a barevnou hloubkou25, i například využití funkce neurálního enginu nebo dalších složitějších efektů, které jsou akcelerované grafickými čipy.

Aplikaci Neural Engine představila jako součást DaVinci Resolve Studio společnost Blackmagic v roce 2019. Tato aplikace sestává z několika efektů, založených na umělé inteligenci. K jejich akceleraci využívá DaVinci Resolve výpočetně schopnosti tenzor jader nových architektur Turing a Ampere od NVIDIE a také čerpá data z jejich knihoven, které obsahují materiály k tréninku neuronových sítí (Tack 2019). Dan May, prezident společnosti Blackmagic, v roce 2019 uvedl, že v určitých případech jde až o dvojnásobný nárůst výkonu oproti grafickým čipům starších architektur NVIDIE, zejména kvůli výslovnému zaměření tenzor jader na výpočty týkající se umělé inteligence. Mezi takto poháněné efekty neurálního enginu patří například rozpoznávání a úprava obličeje, který dokáže sledovat a aplikovat změny na obličej osoby během celého záběru, efekt odstranění objektů, schopný také daný objekt inteligentně sledovat, nebo například efekt odstranění šumu či zvyšování rozlišení.

Abych dané poznatky výrobce otestoval, rozhodi jsem se funkce Neural Enginu vyzkoušet na identickém video materiálu a PC sestavě, avšak s dvěma rozdílnými grafickými kartami. Základ tohoto PC tvořil procesor 6 jaderný AMD Ryzen 5 2600 s frekvencí 3,5 Ghz a 16 gigabajty operační paměti. První využitou grafickou kartou byla NVIDIA GTX 1070, fungující na architektuře Pascal s 8 GB VRAM. Druhou grafickou kartou byla NVIDIA RTX 2080 Super, taktéž s 8 GB VRAM, ovšem i s novou architekturou Turing. Test byl prováděn na verzi DaVinci Resolve Studio 16.

24 Nelineární video editor umožňuje dělat postprodukci videí nelineárně, a tedy dělat změny v které části videa nebo filmu chceme a kdy chceme. 25 Maximálně 8 bitový záznam 20

Při samotném testu jsem využil 3 minuty a 11 sekund dlouhý záběr videa ve Full HD rozlišení, na který jsem aplikoval efekt odstranění objektů. Tento efekt dokáže daný objekt inteligentně během celého záběru sledovat a odstranit tak, že ho nahradí pozadím nebo okolním materiálem. Záznam jsem renderoval do kodeku H.264. První render s grafickou kartou GTX 1070 trval dvě minuty a 17 sekund, přičemž karta byla průměrně vytěžena na 75 % a procesor na 45 %. Render pomocí RTX 2080 trval minutu a 57 sekund, přičemž karta využívala přibližně 50 % svého výkonu a procesor zůstal vytížený téměř identicky.

Porovnání času při renderingu videa s efektem Object Removal při GPU s architekturou Pascal a Turing v Davinci

GTX 1070 (Pascal) Resolve Studio

RTX 2080 (Turing)

105 110 115 120 125 130 135 140 čas enkódování v sekundách (kratší je lepší)

Graf 2 Porovnání času při enkódingu videa s efektem Object Removal při GPU s architekturou Pascal a Turing v DaVinci Resolve Studio Při našem testu jsem tak narazil na urychlení renderu pomocí novější RTX 2080 jen o 17 procent ve srovnání s GTX 1070. Tak malý nárůst může být způsoben například faktem, že i když se karty liší svými architekturami, obě mají stejnou kapacitu VRAM, a to 8GB. Zmíněných 17 % mohla mít na svědomí právě Turing jádra přítomna v RTX 2080, avšak v množství proměnných při této operaci není v mých silách zjistit více detailů.

Podobně jako software Adobe Premiere Pro, využívá DaVinci Resolve k plynulejšímu a rychlejšímu přehrávání nebo exportování klipů enkodér NVENC a dekodér NVDEC. Jejich podporu má DaVinci Resolve navíc mnohem déle než Premiere Pro a tak jsou oba z kodérů v tomto případě lépe optimalizované. Při testu rozdílů v renderingu softwarového a hardwarového však v DaVinci Resolve absentuje možnost enkódovat pomocí grafické karty bez využití NVENC a tedy mám možnost porovnat rozdíl v enkódingu jen přes procesor a s pomocí grafické karty.

21

K dispozici jsem měl opět DaVinci Resolve Studio 16, avšak tentokrát s konfigurací procesoru Intel Core i7-8750H se základní frekvencí 2,20 Ghz, 16 GB operační paměti a grafickou kartou NVIDIA GTX 1060 se 6 gigabajty VRAM. Na test jsem použil 35 minut Full HD záznamu bez jakýchkoliv efektů a v obou případech jsem ho renderoval do kodeku H.264. Softwarový enkóding pouze za pomoci procesoru trval 29 minut a 8 sekund čistého času. Procesor byl při tomto renderu vytížen na 100 procent a grafická karta na přibližně 15 %. Enkóding s pomocí grafické karty a enkodéru NVENC trval 8 minut a 20 sekund. Procesor byl v tomto případě zaměstnán na přibližně 65 procent a grafická karta na více než 80 procent. Pozoruhodné bylo využití samotného kodéru, který pracoval na více než 70%.

Porovnání času při renderingu videa s GPU akcelerací a bez ní v Davinci Resolve Studio

Softvérové enkódování (CPU)

Hardvérové enkódování (CPU a GPU)

0 200 400 600 800 1000 1200 1400 1600 1800 2000 čas enkódování v sekundách (kratší je lepší)

Graf 3 Porovnání času při enkódování videa s GPU akcelerací a bez ní v DaVinci Resolve Studio Protože je DaVinci Resolve orientovaný na výkon grafického čipu více než například Adobe Premiere Pro, je možné, že při slabší grafické kartě a využívání náročnějších efektů, zda provádění složitějších operací, naplníme operační paměť grafické karty a nebudeme schopen v Resolve dále pracovat. K tomuto problému může dojít například právě při výše zmíněných efektech aplikace neurální enginu, se kterými má zkušenosti i střihač a kolorista Petr Racek. Ten nám k této problematice poskytl online rozhovor dne 26. listopadu 2020.

Racek při své každodenní práci využívá software DaVinci Resolve Studio. Preferuje ho před konkurenčními softwary právě kvůli jeho orientaci na grafický čip, což mu umožňuje rychlejší zprocesování náročných efektů. Často se věnuje postprodukci televizních reklam, natáčených na filmové kamery s vysokým rozlišením, které způsobuje, že je na záznamu častokrát vidět nedokonalosti na tvářích herců, které je nutné retušovat. K tomu používá právě efekty Neurálního enginu, pomocí kterých může aplikovat rozličné nastavení například pro oblast čela, nosu či očí herce, a na potřebném místě rozmazat jeho pleť. Nakolik však k tomu využívá kartu starší architektury NVIDIA Pascal, už několikrát na omezení VRAM narazil. Pokud to vysloveně není nutné, snaží

22

se využívat starší metodu maskování, aby kartě ulehčil. „Později mám v plánu zakoupit novou grafickou kartu, určitě se budu poohlížet po něčem, co má zejména velkou operační paměť. Když jsem si dělal předběžný průzkum, narazil jsem i na novou sérii karet AMD, ze kterých má i ten nejlevnější model 16 gigabajtů paměti. Cenově srovnatelný model od Nvidie má jen 8 gigabajtů. Rozumím, že NVIDIA bude mať v Resolve pravděpodobně lepší optimalizaci, protože s nimi spolupracuje, ale doufám že když se pro AMD rozhodne víc lidí, budou se vývojáři tohoto a dalších podobných softwaru snažit podporu karet a jejich technologií víc vyvážit,“ dodává Petr Racek.

4.1.3 Využití enkodéru NVENC v Open Broadcast Software (OBS Studio) Open Broadcast Software (OBS) je software určený pro živé vysílání a nahrávání videa. Jelikož patří mezi open-source software, je kompatibilní s Windows, Macem či Linuxem a propagují ho jedny z největších live streamingových platforem Twitch a Facebook, je mezi uživateli často preferovaný před dalšími alternativami. Výhodou OBS je i jeho jednoduchost ovládání a tím pádem i rychlost, s jakou je možné začít vysílat.

Při živém vysílání musí software snímaný materiál, ať už je to záznam obrazovky nebo video z kamery, zabalit, tedy enkódovat a poslat dál. V OBS však existuje několik možností, jak tento proces proběhne. Jako první je k dispozici softwarový enkodér x264, který na enkódování využívá výpočetní sílu procesoru. Pokud si zvolím tuto možnost, důležité je ještě dodatečně nastavit takzvaný enkódovací preset a tedy to, kolik z výkonu čipu předám enkodéru. Možností je zde osm, a to ultra fast, super fast, very fast, faster, fast, medium, slow a slower. Čím rychlejší nastavení použiji, tím méně zatížím procesor, avšak snížím i kvalitu vysílaného videa. Pokud zvolím pomalejší preset, efekt bude samozřejmě opačný. Důležité je tak nalézt rovnováhu mezi zátěží na procesor podle toho, co vysílám, tedy jaké další softwary či procesy ho zatěžují tak, abych neměl velký výkonnostní úpadek kvůli vysílání, ale zároveň mohl vysílat v patřičné kvalitě. Při využití softwarového kodéru x264 je tedy obraz vysílán z grafické karty přes operační paměť počítače do procesoru, kde je enkódovaný.

Druhou z možností vysílání je využití hardwarového enkódingu a tedy enkóding pomocí grafického čipu. Zde existuje několik možností podle jeho výrobce. AMD nabízí svůj Video Coding Engine, Intel zase technologii Quick Sync a NVIDIA enkodér NVENC. NVENC je starý 9 let a nachází se v čipech NVIDIA již od architektury Kepler, není v OBS úplnou novinkou. Nicméně v roce 2019 bylo fungování NVENC v OBS verzi 23 kompletně revidované tak, aby místo vysílání obrazu z bufferu grafického čipu do operační paměti a zpět, zůstal celý cyklus v GPU, kde se obraz vykreslí i enkóduje a následně posílá dál. Tento systém tak usnadňuje práci i operační paměti a umožňuje záznam výkonnostně náročných programů vysílat bez větší ztráty kvality či výkonu.

K otestování využití enkodéru NVENC v Open Broadcast Software jsem zvolil živé vysílání náročného softwaru na výkon, během kterého jsem přepínal mezi softwarovým a hardwarovým enkodérem a také jsem měnil jejich presety.

23

Jako první jsem spustil livestream s konstantním datovým tokem 6000Kbps a softwarovým enkódingem x264 s presetem ultra fast. PC sestavu tvoří osmijádrový procesor AMD Ryzen 7 3700x s frekvencí 3,6 GHz, grafická karta architektury Turing - NVIDIA GeForce RTX 2080 Super a 16GB operační paměti RAM. Software, jehož záznam vysílám, je videohra F1 2020 s nastavením detailů na "vysoké". Preset ultra fast by měl zaručit malý nárok na výkon, avšak silný úpadek na kvalitě vysílaného záznamu. Během samotného vysílání se teorie potvrzuje a zatížení procesoru se pohybuje mezi 30 až 40 procenty. Grafický čip je kvůli vykreslování videohry zatížen na přibližně 50 procent26. Co se tedy týče výkonu stroje, jsem v naprosto normálních a zvládnutelných hodnotách. Problém je však samotný záznam, který je rozpixelovaný, bez větší míry detailů a při rychlém pohybu vidím častou tvorbu artefaktů.

Po přepnutí presetu na možnost medium jsem zpozoroval značný nárůst kvality záznamu, avšak přímo úměrný s nárůstem výkonu potřebného na jeho enkódování. Zátěž procesoru se zvedla na úroveň mezi 70 a 80 procent. Preset slower, který je nejvyšší možností z hlediska kvality při softwarovém enkódingu, zvedl vizuální stránku záznamu ještě o něco výš, avšak procesor vytížil na rozmezí 90 až 100 procent výkonu, což sice nebylo znát na práci se softwarem, ale záznam utrpěl významný úpadek na plynulosti, vynechával značné množství obrázků a stal se prakticky nesledovatelným.

Na závěr jsem enkodér v OBS přepnul na možnost NVIDIA NVENC H.264 a jako preset jsem zvolil Max Quality. Všechna ostatní nastavení jsem ponechal jako dříve a opět spustil živé vysílání. Procesor počítače vykazoval během livestreamu zátěž přibližně mezi 30 až 40 procenty a grafický čip dosahoval hodnoty těsně nad 70 procent. Samotný enkodér NVENC pracoval jen na 8 až 12 procent. Nakolik si software, jehož záznam jsem vysílal, ukrajoval přibližně 50 %27 výkonu grafického čipu, můžeme vidět, že celý cyklus posílání obrazu a jeho enkódování v rámci grafické karty si ukrajuje dalších přibližně 20 % výpočetní síly čipu. Vizuálně bych kvalitu obrazu při enkódování pomocí NVENC mohl přirovnat k softwarovému enkódingu s presetem slower. Jelikož disponuji poměrně výkonnou grafickou kartou28, nenarazil jsem při vysílání na jakýkoliv problém, avšak při určitých typech softwarů je možné, že pokud bude grafický čip vytížen nad 95%, počítač začne priorizovat proces samotného softwaru nad proces OBS, a tak automaticky zhorší kvalitu vysílání. Pro tento případ je třeba v nastavení OBS změnit jeho prioritu z výchozího nastavení Normal alespoň na možnost above normal.

Na základě výsledků testů můžu potvrdit, že enkóding pomocí NVENC při vysílání poskytuje záznam ve vysoké kvalitě a při tom odlehčuje procesor, jehož výkon může být k dispozici pro další potřebné operace. Softwarový enkóding při podobné

26 Viz Přílohy, Příloha C 27 Tento fakt umíme přibližně odečíst z informace o zatížení GPU při softwarovém enkódingu. 28 NVIDIA GeForce RTX 2080 Super je výkonnostně jen o pár procent slabší od RTX 2080 Ti, která je nejvýkonnější grafickou kartou série 20 pro běžné spotřebitele. Pracovní karty série Quadro jsou samozřejmě výkonnější. 24

kvalitě záznamu vytíží procesor téměř na maximum a začíná vynechávat obrázky. Při menší zátěži na CPU zase není možné dosáhnout kvalitní záznam.

Během tohoto testování jsem se zaměřoval na kvalitu záznamu, odcházejícího přímo z jeho zdroje, která však nemusí být shodná s kvalitou záznamu, který se dostane k divákovi. Do takového přenosu totiž vstupuje množství proměnných, z kterého jsou možná nejdůležitější stabilita a rychlost sítě jak vysílajícího, tak i diváka. Pro služby poskytující živé vysílání je typický takzvaný variabilní datový tok, který kvalitu vysílaného záznamu upravuje právě na základě datového toku, který je zařízení připojeno na internet schopné přijmout a předat. I když budu vysílat ve vysokém rozlišení s velkým počtem snímků za sekundu, k divákovi, který s nachází na místě s horším připojením, se tedy dostane materiál značně degradován. 4.1.3.1 Změna tvůrčích postupů při využívání NVENC v Open Broadcast Software

Live streaming neboli živé vysílání, nebo tvorba záznamů z různých softwarů či videoher, je dnes prací na plný úvazek pro tisíce lidí po celém světě. Využívání softwarů jako je Open Broadcast Software se stalo ještě populárnějším během celosvětové pandemie nového koronaviru, kdy mnoho dosud fyzických kurzů, představení, přednášek a podobných akcí, muselo přejít na distanční formu.

Já jsem se v předešlé kapitole snažil vysvětlit, jak enkóding a streaming v OBS funguje a porovnal jsem možnosti, které k požadovanému výsledku mohou vést. Jednou z nich je právě využití enkodéru NVENC od společnosti NVIDIA, který umožňuje enkódovat vysílané video, aniž by výrazně zatěžoval ostatní komponenty počítače. Důležité pro tuto diplomovou práci je tak kromě této srovnávací analýzy i analýza toho, jak tyto různé možnosti ovlivňují pracovní postup lidí, kteří v těchto softwarech pracují na denní bázi.

Pro potřebu této práce mi poskytl rozhovor Chris Flaeri, který Open Broadcast Studio pravidelně využívá k živému vysílání nebo nahrávání videa. Rozhovor, ze kterého budu čerpat, se uskutečnil online formou dne 9. listopadu 2020.

Flaeri říká, že pro živé vysílání prakticky vždy volí enkóding pomocí NVENC protože nezatěžuje jeho systém. Když využíval softwarový enkóding, častokrát narážel na problém, kdy při vysílání zabíral 50 procent výkonu procesoru software, jehož záznam vysílal a až 50 zbývajících procent ubíralo samotné OBS. I když teď už vlastní výkonnější procesor, při živém vysílání zůstává při enkodéru od NVIDIE. Co se však týče nahrávání videa ve vysokém rozlišení, využívá Flaeri namísto konstantního datového toku CBR pro kontrolu datového toku konstantní kvantový parametr (CQP)29 nebo Faktor konstantního toku (CRF)30. Ty umožňují nahrávání detailního a prakticky bezztrátového záznamu, který může být vhodný například do videí kde porovnáváme grafické nastavení softwarů a podobně (Whitehead 2020). Při těchto nastaveních pro datový tok se automaticky počítá

29 Z angl. Constant Quantization Parameter, dostupný při hardverovém enkódingu 30 Z angl. Constant rate factor, dostupný při softwarovém enkódingu 25

s mnohem větší velikostí výsledných souborů jako když nahráváme při konstantní nebo variabilním datovém toku, avšak zde Flaeri preferuje právě softwarový enkóding. „Po čase jsem zpozoroval, že když nahrávám video s CRF pomocí enkódingu přes procesor, dostanu kvalitativně téměř stejný materiál jako když nahrávám s CQP, avšak samotné soubory videa mají menší velikost a nezahlcují mi tolik disk. Pokud tedy mám k dispozici výkonný procesor, raději v tomto případě volím softwarový enkóding a CRF,“ říká.

K poznatkům z mého testu ještě tedy na základě rozhovoru s Chrisem Flaerim můžu doplnit informaci, že softwarový enkóding může být lepší volbou při nahrávání, ne vysílání videa, pokud s ním potřebuju pracovat v bezztrátovém formátu. Záleží však samozřejmě i na tom, jaký procesor bude mít stroj, na kterém nahrávání uskutečním.

4.2 Raytracing v reálnem čase Vytvořit fotorealistický obraz je cílem počítačové grafiky po několik desetiletí. Základem k inovaci je proto pro grafiky pozorování reálného okolního světa a jeho následné porovnávání s nejvyspělejším momentálně dostupným počítačem-generovaným obrazem. Už v počátcích počítačové grafiky bylo poměrně rychle možné schovávat menší objekty za větší a neprůhledné objekty, generovat jejich povrchovou strukturu nebo vytvářet odlesky na reflexivních objektech. Postupem času pokrok umožňoval využívat další a další metody, pomocí kterých se grafické scény stávaly stále schůdnější, avšak od reality se výsledek stále značně lišil.

Jednou z dodnes nejpoužívanějších metod k vykreslení trojrozměrného obrazu na dvoudimenzionální obrazovce je takzvaná rasterizace. Při rasterizaci jsou objekty na obrazovce vytvářené z mřížky virtuálních trojúhelníků nebo polygonů, které tvoří samotné trojdimenzionální modely objektů. Ke každému z jejich vrcholů jsou přiřazeny informace o jejich barvě, velikosti, či pozici v prostoru. Počítač následně převede tyto trojúhelníky a polygony na pixely pro dvoudimenzionální obrazovky, přičemž každý pixel umí informace z vrcholů využít a změnit tak některý ze svých parametrů, například svou barvu. Výhodou rasterizace je nesporně rychlost, s jakou dokáže obraz vykreslit. Martin Stich (2019), vrchní inženýr ve společnosti NVIDIA, je názoru, že při rasterizaci již byl dosažen limit jejích možností, simulace reálných světelných paprsků vyžaduje operaci, kterou rasterizace věrohodně provést nedokáže. Tou je schopnost položit si otázku "co se nachází v mém okolí?" a vyhodnotit ji z jakéhokoli bodu na scéně. Za desítky let, během nichž vývoj rasterizace postupoval, se mnohé frekventované rasterizační techniky tuto nezbytnou operaci pokoušeli simulovat, avšak vždy v těchto případech dochází vzhledem k předběžné kalkulaci, neschopné fungovat ve všech potenciálních možnostech a scénářích, k chybovosti. Proto takzvané stínové mapy nebo bake-ované světelné mapy trpí nežádoucími artefakty, či úplnou ztrátou požadovaného světelného efektu (Stich 2019, s. 16).

Idea raytracingu, tedy takzvaného sledování paprsků vznikla již počátkem šedesátých let dvacátého století, kdy při tvorbě designu čoček fyzici vykreslovali dráhu, kterou projdou paprsky světla od jeho zdroje až za čočku. Vědci zabývající se 26

počítačovou grafikou považovali právě tento princip, pocházející z fyziky světla, za vhodný pro vytvoření správného syntetického obrazu (Glassner 1989, s. 9-10). Poprvé tuto technologii popsal v své výzkumné práci zaměstnanec společnosti IBM Artur Appel v roce 1969, kde vysvětluje, jak dokáže raytracing sledovat světelný paprsek skrz pixely trojrozměrného modelu scény na dvojrozměrné obrazovce (Caulfield 2018). Výkon tehdejších počítačů však na vykreslování scén touto složitou metodou nestačil, a tak raytracing upadl na několik dalších let do pozadí. Časem bylo vyvinuto a vylepšených mnoho dalších algoritmů, díky nimž dostávali syntetické scény vlastnosti reálných fotografií (například rasterizace), ale mnohé z nich fungovaly jen za specifických podmínek, nebo nemohly být aplikovány současně.

Se zvyšujícím se výkonem moderních počítačů, bylo postupně více a více možné v grafice simulovat reálnou fyziku. Algoritmus raytracingu tak byl znovu oprášený a vylepšen tak, aby zvládl různé druhy optických efektů (Glassner 1989, s. 9-10). Raytracing nám dnes umožňuje sledovat paprsky na celé vygenerované scéně, zjistit, který objekt jimi byl zasažen, jak a z jaké vzdálenosti.

V realitě, kde na trojrozměrné objekty svítí nějaký zdroj světla, se dokážou fotony odrážet z jednoho objektu na druhý předtím, než se dostanou k očím diváka. Jiné objekty mohou světlo zablokovat a vytvořit tak stín, nebo může dojít k refrakci, při níž se světlo mění poté, co projde přes průhledný nebo poloprůhledný objekt, například přes sklo nebo vodu. Aby byl raytracing schopen takto komplexní dění simulovat, funguje paradoxně na téměř úplně opačném principu než reálná fyzika. Namísto sledování paprsků přímo ze světelného zdroje do očí diváka jsou při raytracingu paprsky vysílané z kamery, která ovlivňuje divákův zorný úhel na scénu a následně jsou zaslány zpět do světelného zdroje. Tento opačný proces je tak mnohem efektivnější, protože při něm není třeba vykreslovat část scény mimo zorný úhel diváka. Jako v realitě pak tyto paprsky putují přímo do očí diváka, ale některé jsou zablokované předměty na scéně a vytvoří jejich stíny nebo se odrážej či různé refraktují v závislosti na povrchu předtím, než se dostanou do našich očí.

Obrázek 8 Schéma fungování raytracingu. Zdroj: Wikipedia

27

4.2.1 Software Unreal Engine 4 Unreal Engine je softwarové prostředí určené pro vývoj videoher, tvorbu filmových scén, architektonických vizualizací, či vizuálních efektů od společnosti Epic Games. Poprvé byl představen v roce 1998 společně s videohrou Unreal, která svým úspěchem přilákala k využívání tohoto enginu další vývojáře známých her z období na přelomu století, jako například Deus Ex, Rune nebo první části herní adaptace Harryho Pottera. Velkým náskokem Unrealu před ostatními konkurenčními editory byla v té době jeho možnost měnit rozložení jednotlivých úrovní a upravovat geometrii v reálném čase. Verze Unreal 2.0 v roce 2002 přinesla podporu i pro konzole PlayStation 2, Xbox, nebo Gamecube a byla tak prvním pokusem sjednotit vývoj her pro počítač a herní konzole do jednoho softwaru, protože to bylo tehdy vnímáno jako dvě poměrně neslučitelné záležitosti. Na tomto druhém vydání, vyvinula například svou náborovou hru America 's Army i armáda spojených států (Thomsen 2012). Licence na využívání Unreal Enginu byla zpočátku založena na jednotném poplatku za projekt. Později přešlo Epic Games na vybírání měsíčních poplatků nebo si začali nárokovat jistý podíl z tržeb daného projektu. Dnes, přibližně 23 let od vydání jeho první verze je k dispozici Unreal Engine 4 jako volně stažitelný software a na jeho základě fungují stovky vysoce rozpočtových ale i nezávislých herních titulů či filmových děl. Poplatek z tržby díla zůstal však při příjmech nad jistou částku zachován (Unreal Engine 2020).

4.2.2 Unreal Engine a jeho využiti ve filmu Využívání Unreal Enginu ve filmovém průmyslu má svou bohatou historii. Od roku 2001, kdy ho zřejmě poprvé využil Steven Spielberg na vizualizaci Rogue City při pro-produkci filmu A.I. Artificial Intelligence, se k simulacím fyziky, různých efektů a tvorbě scén prostrendíctvom Unrealu uchýlilo množství dalších tvůrců. Z těch známějších snímků to je například Rogue One: A Star Wars Story, War of the Planet of the Apes, nebo Ford v Ferrari, ve kterých bylo možné sledovat ať už jednotlivé prostředí, rekvizity, nebo vizuální efekty vytvořené právě v Unreal Engine, což zjednodušovalo práci při postprodukci filmu (Miller 2020).

Nový rozměr jeho využití ale vznikl během produkce seriálu The Mandalorian od služby Disney + v roce 2019. Výkonný producent Jon Favreau navázal spolupráci s inženýry společnosti Epic Games, která vedla k zcela nové metodě virtuální produkce právě za pomoci softwaru Unreal Engine 4. Protože je The Mandalorian zasazený v univerzu Star Wars a drtivá většina jeho scén tedy obsahuje sci-fi prvky, bylo by na velkou část produkce nutné používat zelené plátno a vytvářet prostředí ve kterých se herci nacházejí post-produkčně. Štáb ve spolupráci s týmem Epic Games však přišel s nápadem natáčení ve studiu obklopeném LED obrazovkami, přehrávajícími virtuální scénu, kterou bylo možné navíc v reálném čase upravovat. Studio poháněly 4 paralelně propojené počítače a ovládali tři operátoři Unreal Enginu, kteří mohli manipulovat se světlem a efekty na přehrávaných scénách. Velká část práce tak mohla být hotová přímo ve studiu, což ušetřilo finance a čas při přesouvání se na různé lokace a tento způsob také centralizoval tvorbu těchto prvků, na rozdíl od běžných produkcí (Farris 2020).

28

Nemusí jít však jen o úsporu času, financí a zlepšení samotného workflow, využití herního enginu může pomoci i kvalitě samotného díla, pokud herce dané virtuální prostředí reálně obklopuje, mohou s ním živě interagovat a například ukazovat na věci, které skutečně vidí. To dodává všem přítomným při natáčení jakýsi kontext (Liberi 2020).

4.2.3 Implementace a funkčnost raytracingu v reálnem čase v softwaru Unreal Engine

Jak jsme již objasňovali v předešlých kapitolách, raytracing nám díky své podstatě a fungování dokáže dodat realističtěji působící scény na rozdíl od rasterizační technologie. Využívání raytracingu na vykreslování statických obrazů není v tvůrčím průmyslu ničím novým, avšak jeho aplikace v reálném čase, což vyžadují právě například herní enginy jako Unreal Engine, byla pro mnohé softwary a společnosti výzvou. Rozhraní pro grafické operace v reálném čase, jako například DirectX nebo Vulkan, do roku 2018 raytracing nepodporovaly a jeho využití v hrách nebo podobných softwarech, kde je vykreslování grafických prvků potřebné v reálném čase, nebylo možné, i kdyby k tomu existovala dostatečně výkonná technika. Na implementaci raytracingu do Unreal Enginu 4 spolupracovaly v roce 2018 týmy inženýrů ze společností NVIDIA a Epic Games. Označili to za jeden z největších a nejnáročnějších zásahů do architektury tohoto softwaru. Samotná technologie totiž funguje na několika úrovních. Raytracing je možné aplikovat například na stíny, odrazy, globální osvětlení či ambientní okluze jednotlivě a nezávisle na sobě, proto je k nim nutné při práci i jednotlivě přistupovat. Po přizpůsobení samotného rozhraní DirectX Raytracing a využití nových RT jader architektury Turing grafického čipu NVIDIA k rozsáhlým testům, vytvořil tým NVIDIE a Epic Games nové rekonstrukční filtry na vytváření všech těchto světelných jevů raytracingem v reálném čase (Liu, Llamas a kol. 2019, s. 289-291).

4.2.3.1 Raytracing stínů

Hlavní výhodou stínů vytvářených technologií raytracing je jejich fyzikální přesnost a přirozenost, která zvyšuje kvalitu vykreslování scény tím, že se podobá realitě více než například nejvíce používaný rasterizační způsob, takzvaný shadowmapping. Jedním z nejviditelnějších rozdílů při používání raytracing jsou kromě vytváření přesnějších stínů k daným objektem jednoznačně jejich jakési stupně a tudíž přítomnost například měkčích polostínů, na jaké je lidský zrak z reálného světa zvyklý. To vytváří dohromady foto realističtější obraz, jehož dosažení je cílem takto tvořené grafiky.

29

Obrázek 9 Vizualizace stupňů stínů. Zdroj: NVIDIA

K tomu, aby byly detaily stínů vykreslené co nejdokonaleji a přirozeně, je třeba z kamery vyslat na scénu velké množství paprsků. To však začíná být problémem pokud to máme udělat v reálném čase a s několika snímky za sekundu, protože je výpočet všech vystřelení paprsků a jejich následných odrazů náročný na výkon. Proto se při práci s raytracing v reálném čase, jako například v Unreal Engine, setkáme zejména s metodou vystřelování pouze jednoho paprsku na pixel. S takto malým počtem paprsků na scéně si sice vytvoříme nežádoucí šum, ale ušetříme výkon, jehož část může putovat na denoising, tedy rychle proti tohoto šumu. Denoiser používá informace o daném světelném zdroji, tedy jak je velký, jakého je tvaru nebo jak daleko se od objektů na scéně nachází, aby byl schopen vypočítat správnou stopu pro odstranění šumu (Liu, Llamas a kol. 2019, s. 301- 303).

Obrázek 10 Rozdíl před a po použití denoiseru. Zdroj: NVIDIA Rozdíl mezi raytracovanými a rasterizovanými stíny však samozřejmě registrujeme i při méně difúzním světelném zdroji a větších detailech objektů. Na následujícím obrázku je velmi jednoduchá scéna vytvořená v Unreal Engine 4, která obsahuje kousky kartonových krabic umístěných mírně nad povrchem země, přičemž na

30

ně pod mírným úhlem svítí jedno bodové světlo tak, aby bylo možné sledovat rozdíl v kvalitě vykreslených stínů pomocí raytracing a pomocí rasterizace - shadowmappingu.

Obrázek 11 Vizualizace rozdílu mezi stíny rasterizovanými a raytracovanými. Zdroj: autor práce Při rasterizaci (v pravé části obrázku) pozorujeme výrazně nepřesné stíny s nepravidelnými hranami, které vyplývají pravděpodobně z materiálu daného objektu. Na levé straně obrázku můžeme vidět raytracované stíny, které jsou ostré a přirozené pokud vezmeme v úvahu fakt, že se kousek kartonu nachází těsně nad zemí a svítí na něj bodové světlo z jedné strany.

4.2.3.2 Raytracované odrazy v Unreal Engine 4

Jednou z nejvyužívanějších možností raytracing v Unreal Engine 4 jsou právě odrazy, protože většina rasterizačných technik není schopna na odrazových objektech a površích potřebný obrácený obraz často věrně reprodukovat. Pokud vynecháme raytracing, v Unreal Engine můžeme využít například takzvané screen-space reflections, které k vypočítání odrazů užívají pouze data nacházející se aktuálně na obrazovce. Při volném přechodu scénou v reálném čase tak častokrát můžeme při této technologii sledovat postupné dopočítávání objektů v hraničních oblastech obrazovky31. Další z využívaných technik jsou takzvané odrazové próby32, které po umístění na scénu své okolí jakoby vyfotografují a jejich záznam se zobrazí na nejbližším reflexním povrchu. Klíčem k vytvoření správných odrazů tímto způsobem je tedy jejich vhodné rozmístění po scéně a nastavení rádiusů tak, aby pokrývaly co největší plochu. Rasterizační techniky tedy využívají namísto reálných, fyzikální založených odrazů, jen matematicky vypočtené odrazové mapy, které se při dynamických scénách musí přepočítávat pro každý zobrazovaný snímek znovu. Navíc často trpí chybným zobrazováním geometrie, pokud je vykreslovaný objekt svým tvarem o něco složitější (Slusallek 2004).

31 https://youtu.be/oCXVG0Qw7Fo 32 Z angl. Reflection Probe 31

Obrázek 12 Vizualizace rozdílu mezi odrazy rasterizovanými a raytracovanými. Zdroj: autor práce

Raytracing dokáže svou fyzikální podstatou tyto nedostatky z velké části eliminovat. Jeho schopnost zobrazit dynamické odrazy na různých površích v reálném čase dokonce i mimo obrazovky je ale samozřejmě náročná na výpočet. Podobně jako u raytracovaných stínů, kde je nutné co nejvíce zmenšit počet vysílaných paprsků z kamery

(většinou jeden na pixel) je i při úvaze nutné přistoupit ke kompromisům. Doporučovanou metodou je (zjednodušeně řečeno) degradace materiálu. Ta má samozřejmě vliv na výslednou kvalitu modelu, avšňak zjednodušené plochy pomohou k rychlejším výpočtům odrazu paprsků a sníží nárok na potřebný výkon. Navíc můžueme říct, že při aplikacích pracujících v reálném čase, které jsou interaktivní, jako například videohry, je taková degradace téměř nepovšimnutelná33.

4.2.3.3 Okolní okluze a Raytracing

Okolní, neboli ambientní okluze byly jako pojem poprvé prezentovány matematiky Zhukovem, Inoesem a Kroninem v roce 1998. Definovat se dají jako kontaktní stíny v počítačové grafice, které se nacházejí v místech spoje nebo kontaktu objektů, či jejich částí. Vyplňují úzké mezery a malé výběžky povrchů tak, že navozují pocit skutečného trojrozměrného prostoru (Kontkanen, Laine 2006). Ačkoliv silně souvisí s globálním osvětlením scény a jejich odlyšné parametry by mohly způsobit fyzikální nepřesnost, v Unreal Engine 4 je možné jejich osobní nastavení (Liu, Llamas a kol. 2019, s. 311). K jejich zobrazení můžeme opět využít například rasterizačnou technologii, kterou jsme již popisovali při reflexích, a to takzvané screen-space okolní okluze (SSAO)34, které podobně jako v případě odrazů trpí problémy s nechtěnou tvorbou artefaktů a zejména postupným vykreslováním podle toho, co se v daném okamžiku nachází na obrazovce. Ignorují tak geometrii mimo aktuálního zorného pole nebo například objekty za kamerou. SSAO také kvůli menší fyzikální přesnosti tvoří kolem objektů často nežádoucí tmavou záři. Raytraycované ambientní okluze jsou tak na pohled přirozenější, méně výrazné a netvoří kolem objektů artefakty, či záře. Jejich problémem je jako u dalších již zmiňovaných světelných jevů například šum způsobený potřebou vysílat z kamery jen malé množství paprsků kvůli ušetření výpočetního výkonu. To se však týká zejména

33 Viz Přílohy, Příloha D 34 Z angl. screen-space ambient occlusion 32

situací, kde záleží na rychlém konstantném vykreslování, tedy při hrách nebo filmových scénách přehrávaných v reálném čase.

Obrázek 13 Vizualizace rozdílu mezi okolními okluzemi rasterizovanými a raytracovanými Rozdíl mezi scénou s aplikovaným raytracingem při vystřelení jednoho paprsku na pixel s následným denoisingem a vystřelení 256 paprsků na pixel však není tak dramatický. Můžeme ho pozorovat v následujícím obrázku, který na levé straně obsahuje právě scénu s velkou hustotou paprsků na pixel a v pravo vidíme scénu s jedním paprskem na pixel a odstraněným šumem. Pokud se na výsledek soustředíme, je menší vizuální rozdíl samozřejmě možné vidět, avšak pokud by pravá část obrázku byla druhým plánem ve filmové scéně, nebo bychom se přes ni pohybovali v rámci dynamické videohry, bude naše percepce těchto nedokonalostí nižší.

Obrázek 14 Vizualizace rozdílů v počtu vystřelených paprsků při okolních okluzích. Zdroj: YouTube - Microsoft DirectX 12 and Graphics Education

33

4.2.3.4 Globální iluminace a raytracing Globálním osvětlením ve scénách herního enginu jakým je například Unreal Engine 4, můžeme nazvat obecné osvětlení scény a tedy nejen přímé světlo z viditelných světelných zdrojů, dopadající na objekty, ale také jeho odražené či například různé lomené paprsky a jiné nepřímé zdroje světla které se k materiálem na scéně dostanou (Cabeleira 2010). Protože je tento aspekt při osvětlování scény velmi komplexní, k dosažení co nejvíce fotorealistických výsledků, se při zobrazení v reálném čase často využívají nejen striktně rasterizační algoritmy nebo raytracing. I přesto, že jde o dvě velmi odlišné technologie, mnohokrát se využívá právě jejich kombinace. I například při prvotní prezentaci raytracingu v reálném čase v roce 2018 využili inženýři společnosti NVIDIA při krátkém snímku Reflections raytracing při globálním osvětlenými pouze na získání světelných informací z již předem predpočítaných světelných map (Liu, Llamas a kol. 2019, s. 311).

Obrázek 15 Vizualizace rozdílu mezi globální iluminací s raytracingem a rasterizací. Zdroj: autor práce 4.2.3.5 Analýza změny tvůrčích postupů v Unreal Engine s raytracing v reálném čase

V předešlých kapitolách jsem se věnoval tomu, jak implementace raytracingu v reálném čase nabídla nové možnosti při tvorbě filmových, architektonických či herních scén v softwaru Unreal Engine 4. Protože byly tyto technologie implementovány teprve v roce 2018 a neustále se rozvíjejí, je pro tuto práci důležité také konforntovat teorii s profesionály v daném průmyslu. V následující kapitole proto uvedu několik úryvků z rozhovorů zhotovených pro potřeby této práce. Vladimír Jaške, který pracuje jako Senior video artist ve společnosti Bohemia Interactive, využívá Unreal Engine 4 na denní bázi pro tvorbu trailerů a filmových scén do videoher. Jelikož byla poslední hra Bohemia Interactive s názvem Vigor vyvíjena jen na herní konzole Xbox One a , které grafické čipy s podporou raytracing neobsahují, ve studiu zatím nemají zkušenost s implementací raytracingu přímo do hry, avšak díky jeho možnostem jej využívají k marketingovým produktům, jakými jsou například trailery. Dále tak budu čerpat s rozhovoru s Vladimírem Jaškem, který se uskutečnil dne 29 září 2020.

Z obecného hlediska mu raytracing v Unreal Engine pomáhá k tvorbě vizuálně kvalitnějších scén jako rasterizace. Velmi často s kolegy využívají zejména raytracované ambientní okluze a stíny, které jsou mnohem přesnější než jejich matematicky dopočítané 34

varianty a navozují pro trailer potřebný fotorealistický vizuál. „Sice to zní jako banalita, ale pokud máme v Unrealu na zemi rozházené například nábojnice, ony jsou v té velké scéně tak malé, že mám při Screen space ambientních okluzích nevrhají žádný stín. Pokud se k nim kamerou přiblížíme, působí to pak, že jsou pár milimetrů nad zemí. Jakmile však stíny ambientní okluze přepneme do raytracingu, všechny ty malé nábojnice a další věci na zemi, všechny listy a všechny větve stromů přes sebe začnou vrhat krásné stíny a tehdy si řekneme: tak to už je render. Proto si zvykneme raytracing využívat zejména na úvodní sekvence trailerů.“ Jsou však i aspekty, při kterých raytracing Vladimír nepoužívá vůbec. „Například při globální iluminaci jsme zatím nedospěli k nastavení, kde by nám to vlivem šumu a následného denoisingu jako by neplavalo. Když se ten početný šum na velkých plochách, jakými jsou například stěny místnosti, rozmaže, vždy nám tam vznikají různé plovoucí fleky. Problémy máme i s dekály. To jsou jakoby poloprůhledné nálepky, které aplikujeme na 3D modely. Může to být například krev nebo různá koroze na kovových předmětech, která se nekreslí do modelu přímo, protože by se vždy nacházela na stejném místě. Dekály proto aplikujeme samostatně, a právě s nimi má u nás raytracing problém. Tvoří v kombinaci s ním různé bugy.“ Dále Jaške tvrdí, že pokud by raytracing chtěli aplikovat do celého projektu, vytvořilo by to zřejmě mnoho takových podobných problémů, ale zároveň by hra byla vizuálně hezčí. Podle jeho názoru je v momentálním stadiu technologie raytracingu v reálném čase tedy lepší dělat ústupky, případně tomu přizpůsobit samotnou uměleckou a technickou stránku videohry. Jako příklad uvádí Jaške za technickou stránku několikrát oceňovanou videohru Control35.

To v rozhovoru prakticky potvrdil i Igor Stanek, Senior Technical Product Manger ve společnosti NVIDIA, který se mnou dne 2. října 2020 mluvil i o potřebě jisté kvality materiálu na to, aby měl raytracing v reálném čase pro zákazníky význam. „Stává se nám, že když herní studia do svých projektů chtějí implementovat raytracing dodatečně, častokrát nám chybí hodně potřebných assetů. Řešili jsme to například při nové expanzi do hry World of Warcraft. Tam jsme pracovali na implementaci raytracovaných stínů, avšak jelikož dříve v té hře se žádným raytracingem nepočítali, je tam strašně málo shadowcastrů36 o které bychom se mohli zachytit. Pokud tedy spustíme raytracované stíny, zažijeme ve hře jistý výkonnostní pokles a výsledek nebude až tak patrný. Když však dnes nějaký projekt počítá s raytracingem předem, výsledky jsou pochopitelně mnohem lepší.“ Stanek dále říká, že NVIDIA samozřejmě studiím nediktuje, jak by měly různé části jejich hry vypadat, ale vývojářům je na druhou stranu jasné, že čím složitější bude geometrie hry, mohou při raytracingu narazit na o to více problémů.

Právě kvůli rozmanitosti projektů a samotných herních enginů, které ještě navíc často vyžadují přizpůsobení konkrétnímu studiu či stylu projektu, při implementaci raytracingu do hry často pomáhá vývojářům i tým inženýrů z NVIDIE. K této spolupráci mi pro potřeby diplomové práce poskytl rozhovor Ron Haimov, který momentálně pracuje jako Senior Lighting Artist ve společnosti Hangar 13, avšak v letech 2018 až 2020

35 Viz Přílohy, Příloha E 36 Shadowcaster je jakýkoliv objekt, který blokuje světlo vyzařované ze zdroje (gamedev.net) 35

pracoval na vývoji videohry Control37 ve studiu Remedy Entertaiment. Hra Control získala po svém vydání v roce 2019 několik cen za technické a umělecké zpracování právě i kvůli využití raytracingu v reálném čase. V ocenění D.I.C.E byla dokonce výhercem titulu akční hry roku. Dále tak už budu čerpat z rozhovoru s Ronem Haimovem, který se uskutečnil 9. října 2020 prostřednictvím online hovoru.

Haimov vysvětluje, že Nvidia byla do procesu vývoje Control významně zapojena. Několik jejich inženýrů s týmem Remedy pracovalo přímo ve studiu a další jim pomáhali na dálku. „Měli jsme možnost pracovat s novými RTX kartami ještě před tím, než byly představeny veřejnosti a když jsme narazili na jakýkoliv problém s jejich technologií, pomáhali nám to vyřešit.“ Klíčové bylo podle Haimova právě správné nastavení vystřelených paprsků na pixel a jejich kombinace s denoisrem implementovaným přímo v herním enginu a denoisrem od NVIDIE k odstranění šumu.

Jako jednu z nejdůležitějších částí práce s raytracing v reálném čase vidí denoising i Igor Stanek z NVIDIE. „Existuje totiž několik alternativ denoiserů, jako jsou ty naše, další různě volně dostupné nebo si je vývojáři vytvářejí sami pro konkrétní projekt,“ říká. Dále taky tvrdí, že při konzultacích s herními studiemi je vidět jak se s raytracing postupně učí pracovat stále více a více vývojářů a už současné výsledky jsou velmi dobré. „Časem se se technologie ještě zlepší, stále se to bude optimalizovat, zrychlovat, vývojáři s tím budou mít více zkušeností a je to otázka pár generací, kdy si raytracing už takový výkon ukrajovat nebude a bude více a více využíván,“ dodává Stanek.

Častější využívání raytracingu jako fyzikálně založeného rendereru namísto matematických řešení, jakým je například rasterizace, je v aplikacích, které vyžadují vykreslování v reálném čase, jako například Unreal Engine 4, zřejmé. Například výzkum zhotovený společností Jon Peddie Reaseach modeluje, nakolik může být v budoucnu raytracing využíván. V roce 2021 pro něj počítá s 36% podílem na poli renderingu a v roce 2023 například již už s 60% (Peddie 2020).

Obrázek 16 Předpověď využívaní raytracingu ve vykreslování. Zdroj: Jon Peddie

37 Videohra Control nebyla vyvíjena v Unreal Engine 4 ale v engine Northlight, který je majetkem studia Remedy Entertaiment. Rozhovor s Haimovom však považuji za důležitý, protože ilustruje spolupráci společnosti Nvidia s herními vývojáři. 36

4.3 OptiX Raytracing Engine Algoritmy raytracingu jsou vzhledem k jeho fyzikální podstatě sledování světelných paprsků často nepravidelné, a to může představovat problém pro každého, kdo se na jejich výpočet snaží využívat surový výpočetní potenciál grafického čipu. Pro řešení tohoto problému vyvinula NVIDIA programovací rozhraní s názvem OptiX, které představuje obecný rámec pro optimální využití výkonu grafického hardwaru (NVIDIA, 2019). To umožňuje implementaci celého spektra algoritmů týkajících se například právě raytracingu, ale také samotného renderingu či detekování kolizí a využívání umělé inteligence (Parker, 2010). OptiX tedy sám o sobě není rednererem (vykreslovačem), ale spíš škálovatelným rámcem pro tvorbu aplikací založených na raytracingu. Také se vyhýbá jakési specifikaci chování těchto paprsků a je přizpůsobený pro upřednostnění uživatelem zadaného kódu. Skládá se ze dvou hlavních částí, a to hostitelského rozhraní, které definuje struktury raytracingu a z druhého programovacího systému založeného na jazyku CUDA C ++, který dokáže světelné paprsky produkovat, protínat je s jinými paprsky či povrchy a reagovat na ně. Dohromady tak tyto dvě části umožňují podporu surového raytracingu pro implementaci do jednotlivých aplikací (NVIDIA, 2019). OptiX prošel po vydání nových grafických karet, umožňujících používání raytracing v reálném čase generační obměnou na verzi 6.0, díky níž je prostřednictvím něho možné v kreativních softwarech do práce zapojovat právě nové prvky architektur Volta, Turing a Ampere, například RT nebo Tensor jádra (NVIDIA, 2020). V současnosti využívá Rendering engine OptiX mnoho kreativních softwarů nebo jejich interních součástí, jako například Autodesk Arnold, herní engine Unity, Pixar Flow, či Blender38.

4.3.1 OptiX, raytracing a jejich využití v softwaru Blender Blender je renderovací a animační software, sloužící při tvorbě 3D grafiky, vizuálních efektů, animací a simulací či prvků videoher. Jeho velkou předností před konkurencí je zejména jeho dostupnost, protože patří mezi open-source software a je tak použitelný pro každého jak na soukromě, tak komerční účely zcela zdarma. Také funguje na všech standardních operačních systémech jako , Windows a macOS a je dostupný i platformě Steam, což v současnosti odůvodňuje v průměru téměř milion stažení softwaru Blender za měsíc (Siddi 2020). Právě pro jeho rozšířenost a dostupnost v tvůrčím prostředí, jsem se rozhodl vybrat si pro tuto práci právě Blender jako příklad softwaru využívající rozhraní OptiX.

Při samotné práci v Blenderu si na vykreslení scény můžu vybrat ze tří vykreslovacích enginů, a to Workbench, Eevee nebo Cycles. Engine Workbench slouží k co nejrychlejšímu vykreslování v počátečních fázích práce, tedy například při modelování nebo na náhled při animování. Podporuje také takzvaný X-ray mód, umožňující vidět přes objekty k dolaďování detailů. Každopádně však neslouží na závěrečný render scény (Blender 2020). Vykreslovací engine Eevee, který naopak na výsledný render scény použít můžu, pracuje na principu rasterizace, a tedy dokáže pomocí rozhraní Open GL

38 https://developer.nvidia.com/optix 37

vykreslovat rychle, ale zato mnoho světelných prvků, jako například jeho lomy a odrazy, jednoduše matematicky napodobuje, a ne vždy dokáže zobrazovat věrohodně. Poslední z jmenovaných je fyzikálně založen open-source engine Cycles, pracující na principu pathtracingu, tedy typu raytracingu, který se využívá na finální vykreslování co nejvíce realistických scén. Jelikož pracuje se světelnými paprsky vysílanými z kamery, odraženými do světelných zdrojů, výsledky jeho renderů se realitě přibližují nejvíce z jmenovaných. Nevýhodou je však čas, který Cycles na výpočet odrazů všech vyslaných paprsků potřebuje a s tím spojený šum, který tyto paprsky tvoří. Aby Blender mohl tento problém eliminovat nebo alespoň zredukovat, spolupracoval se společností NVIDIA na možnosti hardwarové akcelerace při práci s Cycles, za využití nových NVIDIA RTX grafických karet s architekturami Turing a Ampere. Do Blenderu tak byla v roce 2019 zapracovaná možnost využití rozhraní OptiX při vykreslování pomocí Cycles, což výrazně urychluje samotné vykreslení jako při náhledu, tak při závěrečném renderu (Mours 2019). Pátá generace rozhraní OptiX z roku 2017 navíc disponuje novou funkcí v podobě Denoiseru využívajícího umělou inteligenci na rychlejší odstranění šumu z vykreslování scény, což při Cycles v Blenderu, ale v i mnoha jiných renderovacích enginech a softwarech založených na raytracingových algoritmech, umožnilo prakticky práci s náhledem v reálném čase.

K otestování rozhraní OptiX a výhod, které při práci poskytuje, jsem se rozhodl uskutečnit několik zkušebních renderů. K tomu jsem využil aplikaci Blender Benchmark Launcher, která obsahuje šest různě náročných a detailních scén. Jednotlivé scény jsem renderoval pomocí grafického čipu nejprve přes starší rozhraní CUDA a následně pomocí OptiX-u. Výsledky tohoto testu je možné pozorovat k následujícím grafu.

Časové srovnání při renderingu s CUDA a OPTIX

pavillon_barcelona 126 317 victor 170 468 koro 94 174 fishy_cat 44 113 Názov scény Názov classroom 98 178 bmw27 26 58 0 50 100 150 200 250 300 350 400 450 500 čas v sekundách (kratší je lepší)

OptiX CUDA

Graf 4 Časové srovnání při renderingu s CUDA a OptiX

Z výsledků testu můžeme pozorovat, že render přes OptiX je v každé z testovaných scén rychlejší. Největší rozdíl v čase je možné vidět ve scéně s názvem victor,

38

která se v obou případech vykreslovala nejdéle. Vykreslení této scény pomocí OptiXu bylo rychlejší až o téměř 64 procent oproti renderu pomocí CUDA.

Abych však na otestování této technologie nevyužíval pouze předpřipravené projekty od Blenderu, render pomocí obou technologií jsem vyzkoušel i na scéně simulace vody připravené pedagogem Janáčkové akademie múzických umění Jakubem Marešem. Jelikož má na výsledný čas velký vliv počet samplů, tedy vystřelených paprsků, ponechal jsem je na automatickém nastavení. Při využití CUDA trvalo vykreslení této scény 31 vteřin a 52 setin. Po přepnutí na OptiX se stejná scéna vykreslila za 20 sekund a 51 setin, což je o rychlejší o více než 35 procent. Pokud výsledky při všech scénách zprůměruju, dojdu k výsledku, že OptiX je od CUDA při závěrečném renderu rychlejší přibližně o polovinu.

Abych využití této technologie v praxi dokázal dostatečně zhodnotit, uskutečnil jsem několik rozhovorů s respondenty, kteří software Blender využívají při své každodenní práci.

Dimitrios Vallas, který pracuje jako Environment Artist ve společnosti Hangar 13, využívá Blender zejména k práci na svých soukromých projektech. Několik měsíců vlastní grafickou kartu NVIDIA GeForce RTX 2060, kterou nahradil starší GTX kartu s architekturou Pascal. Online rozhovor s Vallasem se uskutečnil dne 30. září 2020. V následujícím odstavci budu čerpat z jeho poznatků.

Od momentu, kdy Blender začal podporovat rozhraní OptiX a grafické karty RTX, dokáže Vallas pracovat mnohem efektivněji, protože vidí náhled své práce v reálném čase a už více nemusí čekat na jeho vykreslení s dlouhým denoisingem. „Mnohem rychleji tak dokážu texturovat a upravovat světlo na scéně, přičemž se pořád dívám na finální výsledek,“ říká. Při využívání staršího grafického čipu, která OptiX nepodporoval, musel v závěrečné fázi práce po i jen malé úpravě světla spustit render a několik minut čekat na vykreslení celé scény. Pokud s výsledkem spokojený nebyl, opět musel světelný zdroj přesunout nebo poopravit, spustit render a čekat znovu. Nyní mu celý tento proces trvá jen několik sekund. Vallos dále říká, že kromě OptiXu, při práci často využívá i další jiné technologie spojené s NVIDIA kartami. „Žádné negativum v souvislosti s RTX uvést nemohu a určitě bych si tuto grafickou kartu koupil znovu, ovšem nyní bych už šel do generace RTX 30 a architektury Ampere, jelikož její poměr cena- výkon je výborný,“ dodává Vallas.

Pozitivní zkušenosti s využíváním rozhraní OptiX v softwaru Blender má i Vladimír Jaške, který pracuje na pozici Senior Video Artist ve společnosti Bohemia Interactive. Osobní rozhovor s Jaškem, ze kterého v následujícím textu budu čerpat, se uskutečnil dne 29 září 2020.

Jaške uvádí, že bez rozhraní OptiX a RTX karty dokáže pracovat už jen v počátečních fázích práce, kdy se věnuje modelování 3D objektů. Jakmile se přesune do fáze, kdy musí scénu nasvítit tak, aby byla využitelná pro herní trailer, bez OptiXu se už

39

neumí obejít. „Často mám na svých scénách například volumetrickou mlhu, která světelné paprsky ještě láme a když jsem něco podobného musel renderovat na staré GTX grafické kartě, nastavil jsem světlo, spustil render a druhý den jsem se na výslednou scénu mohl podívat. Teď to vidím se správným nastavením vzorkování ve finální podobě za pár vteřin. Odkdy používáme karty rady RTX a rozhraní OptiX, na práci s enginem Cycles se doslova těším. Předtím, se starými grafickými kartami byla pro mě práce s raytracingem v Blenderu spíše nechtěnou povinností,“ dodává.

4.4 Využití technologií založených na umělé inteligenci a strojovém učení Umělá inteligence se stává stále více využívanou napříč téměř každým průmyslovým odvětvím. Stále více a více společností se řídí údaji z datových center, využívají různé automatizované stroje, roboty, a dokonce tu dnes máme i první autonomní vozidla. Je tak pochopitelné, že se společnosti zabývající se informačními technologiemi zaměřují na další vývoj a optimalizaci umělé inteligence. Moderní grafické čipy díky své schopnosti obecnějších výpočtů dnes mohou fungovat jako mozky těchto zautomatizovaných strojů a dávat jim možnost vnímat a chápat své okolí, vyhodnocovat různé situace. Systémy umělé inteligence využívají často takzvané strojové učení39 nebo jeho pokrokovější ekvivalent Deep Learning, jejichž prostřednictvím je stroj schopen učit se na základě dostupných dat z minulosti nebo zadávaných v reálném čase a inteligentně se rozhodovat (Wu 2019). Namísto programování jakýchsi softwarových rituálů je tedy stroj pomocí velkého množství příkladných dat trénovaný a dokáže jednotlivé situace rozpoznat a vyřešit sám. Tyto schopnosti strojového učení jsou tak jako ve vědě či medicíně využitelné i tvůrčím prostředí. Díky Deep learningu je počítač schopen rozpoznávat objekty na fotkách a obrázcích, generovat nové pixely či snímky, rozpoznávat řeč, překládat cizí jazyky a mnoho dalšího. Díky těmto možnostem vyvinula společnost NVIDIA několik technologií aplikovatelných do softwarů pro úpravu fotek, postprodukci videa nebo tvorbu her, které blíže popíšu v následujících podkapitolách.

4.4.1 NVIDIA NGX Využití Deep learningu a umělé inteligence v prostředí kreativních softwarů umožňuje NVIDIA prostřednictvím své technologie s názvem NGX. Pomocí využití tenzor jader nových architektur grafických čipů a také neuronových sítí tak umí například dopočítávat části fotografií, upscale video či grafiku nebo zvýšit ostrost na rozostřeném obraze. NGX je k dispozici pro vývojáře jako stažitelný nástroj, který je možno implementovat do jednotlivých softwarů.

Základními funkcemi technologie NGX jsou Inpainting, Slow-mo a Up-Res. Inpainting je vyvinutý pro softwary pro úpravu fotek, kde slouží k odmazání nežádoucí části obrazu, kterou následně vyplní vygenerovanou alternativou. Pokud tedy máme například fotku kde se na zemi nacházejí kameny, jednoduše kámen vygumujeme a umělá

39 Z angl. Machine Learning 40

inteligence ho nahradí například zeminou nebo trávou která se nachází v jeho okolí40. Funkce Slow-mo je určena zejména pro implementaci do softwarů na postprodukci videa. Umožňuje vytvořit plynule zpomalené video i ze záznamu, který je zhotoven v malém počtu snímků za sekundu a při aplikování klasického efektu zpomalení by se trhal. Slow- mo tak analyzuje jednotlivé snímky a mezi ně vkládá nové, vygenerované pomocí umělé inteligence. Poslední z funkcí uváděných v rámci technologie NGX je Up-Res a tedy možnost zvýšení rozlišení, která dokáže na rozdíl od běžných upscale alternativ, které pixely duplikují, k pixelům snímku nebo videa dopočítat zcela nové pixely a jejich hodnotu tak zvýšit až například osmkrát.

Nakolik byla technologie NGX představena v roce 2018 a dosud nebyla pro běžné uživatele implementována jako samostatná funkce nebo plugin do kreativních softwarů, čerpat informace můžeme jen od vývojářů, který už s NGX jako nástrojem pracovali při jeho implementaci. Jedním z nich je YouTuber Hesham Mahmoud, vlastník kanálu VFX Kitchen, který v jednom ze svých videí41 tuto technologii testuje. Na výsledcích můžeme vidět, že zatímco funkce zvyšování rozlišení funguje velmi dobře, Inpaiting již natolik přesný není a generuje množství artefaktů42. Užitečnější by nám tak při úpravě fotografie v tomhle případě bylo využít manuálně retušování. Je však nutné uznat, že tato funkce je v předběžném přístupu a od výsledků plné verze v budoucnu se může značně lišit.

4.4.2 Neurální filtry v Adobe Photoshop I přesto, že pluginy NVIDIA NGX zatím dostupné široké veřejnosti nejsou, společnost Adobe ve spolupráci s NVIDIí představili v nové aktualizované verzi softwaru Adobe Photoshop 2021 takzvané neurální filtry. Ty v mnoha prvcích fungují podobně jako NGX a na dosažení výsledků využívají neuronové sítě umělé inteligence, čímž značně urychlují práci, na níž bychom při manuálním napodobován těchto efektů strávili mnohem více času. Mnohé z neurálních efektů jsou stále v předběžné beta fázi a při jejich využití tak zatím často dochází k chybovosti. Při profesionální práci se v tomto stádiu využít téměř nedají, avšak kromě jakési zábavné funkce nám mohou sloužit zejména na ilustraci budoucích schopností kreativních softwarů. Neurální filtry v Adobe Photoshop obsahují funkce jako kolorace černobílých fotografií, redukci šumu, super přiblížení, takzvaný smart portrét a další. K ilustraci jejich využití jsem se rozhodl právě na příkladu smart portrétu, jemuž byl z neurálních filtrů na prezentaci společnosti Adobe věnován největší prostor. Prakticky jde o možnost úpravy portrétu, výrazu obličeje člověka, nasvícení, věku, hustoty vlasů, či dokonce pozice jeho hlavy a očí43.

40 Viz Přílohy, Příloha F 41 https://youtu.be/CfIvWEmZ2cE 42 Viz Přílohy, Příloha G 43 Viz Přílohy, Příloha H 41

Obrázek 17 Demonstrace dovedností neurálního filtru v Adobe Photoshop. Zdroj: autor práce

Fungování funkce smart portrétu můžeme ilustrovat na následujícím příkladu. Fotografie na levé straně je originál bez zásadních úprav. Fotografie napravo od originálu má aplikován filtr vyššího věku, má tedy o něco širší obličej, vrásky a šediny. Třetí fotografie má zvýšenou hustotu vlasů a aplikované filtry nižšího věku a radosti. Poslední z fotografií na pravé straně obrázku má natočenou hlavu a zrak do levé strany. Aplikovaný je na ni také filtr překvapení. Pokud bychom tedy nějaký portrét potřebovali jemně upravit, změnit úhel světla, nebo vyrovnat fotografovanému subjektu natočenou hlavu, s patřičným nastavením by to na výsledku nemuselo být znát. Pokud však zvolíme filtry o něco agresivnější, jako například změnu neutrálního výrazu na radost, je na fotografii tento umělý zákrok lze velmi snadno rozpoznat.

Aktualizace přinášející neurální filtry do softwaru Adobe Photoshop potěšila i fotografa Davida Annise, který se věnuje umělecké portrétové fotografii. Ten mi pro potřeby této práce poskytl online rozhovor dne 1. prosince 2020, ze kterého budu v následující části této kapitoly čerpat.

Ačkoliv Annis preferuje spíše manuální retušování portrétovaných lidí, na umělou inteligenci, která by mu při postprodukci mohla pomoci, již delší dobu čekal. Po aktualizaci softwaru ihned nové prvky vyzkoušel, avšak hned narazil na několik problémů. Po použití efektu vyhlazování pleti, tedy retuše, kterou běžně provádí manuálně, se pleť modelky jakoby rozpila a nepůsobila přirozeně. Podobné zkušenosti má i s umělečtějšími filtry, které podle něj neobsahují dostatečné možnosti na jejich přizpůsobení. „Pokud není možné smysluplně ovládat výstup, přestává to pro mě být tvorbou uměleckého díla a spíše bych to nazval aplikováním speciálních efektů. Pevně doufám, že plná verze neurálních filtrů se zlepší ve výsledcích ale i možnostech ovládání,“ říká Annis.

4.4.3 Technologie Deep Learning Super Sampling

V roce 2018, současně s představením nové architektury Turing, představila na své konferenci GTC společnost NVIDIA také beta verzi nové technologie, založené na umělé inteligenci a Deep learningu, avšak ta si své místo našla doposud zejména v herním průmyslu. Tato technologie se zkratkovým označením DLSS, tedy Deep Learning Super Sampling, využívá výpočetní sílu tenzorových jader architektury Turing, díky kterým prostřednictvím umělé inteligence a schopnosti strojového učení dokáže vykreslovat 3D grafiku ve vyšším rozlišení a zároveň zlepšovat zážitek spotřebiteli. Díky ní může totiž grafický čip vykreslit obraz nebo scénu v nižším rozlišení, než je potřeba a neuronové 42

sítě DLSS dopočítávají a znásobují počet vykreslování pixelů, navozující vizuální dojem vyššího rozlišení. To samozřejmě při několika desítkách až stovkách snímků za sekundu. Není náhoda, že tuto technologii představila NVIDIA veřejnosti právě po boku technologie raytracingu v reálnem čase44, která si při sledování paprsků na scéně v reálném čase pro sebe krade velkou část grafického výkonu. DLSS totiž v současnosti dokáže plynulost hry při spuštěném raytracing zvýšit až o téměř polovinu bez povšimnutí ztráty kvality obrazu.

Schopnost strojového učení umožňuje této technologii rozeznávat na scéně běžné objekty jako například psa, kočku, ptáky a auta jen díváním se na čisté pixely obrazu. Vývoj první beta verze tak zahrnoval doslova trénink pro specifické prostředí, při kterém neuronová síť analyzovala desítky tisíc super-počítačem generovaných obrázků z dané scény, či hry a vytvářela si tak svou vědomostní databázi, pro následné dopočítávání potřebných bodů na zvýšení rozlišení.

V dubnu roku 2020 však NVIDIA představila vylepšenou neuronovou síť DLSS 2.0, která byla obsažena v aktualizaci grafického ovladače pro karty série RTX. Druhá generace přinesla kromě optimalizace a tří úrovní jejího použití (Performance, balanced a quality) i velmi důležitou novinku, a to možnost aplikování jakéhosi univerzálního modelu DLSS, tedy jeho využití v produktu, na který nebyla tato technologie speciálně trénovaná.

DLSS tedy dokáže vykreslit například herní scénu v rozlišení Ultra HD 1440p a následně z informací v databázi vygeneruje obraz, který vizuálně působí jakoby byl vykreslen v dvakrát větším rozlišení, tedy 4K. DLSS je tímto způsobem schopna ušetřit velký výkon potřebný k vytištění velkého počtu pixelů ve vysokém rozlišení a spotřebiteli přesto pronést očekávanou kvalitu jím zvoleného rozlišení (Kilgariff, Moreton, Stam, Bell 2018).

DLSS a její aplikace do jednotlivých produktů je navíc široké pole pro kontakt kreativců a vývojářů se samotnou společností NVIDIA (Stanek 2020). Inženýři společnosti totiž často pomáhají se samotnou implementací, a ještě více s optimalizací této technologie, protože mnohé moderní videohry nabízejí až rozlišení 8K. Při něm je třeba vykreslit přes 33 milionů pixelů, a to přibližně šedesátkrát za jedinou sekundu. Vhodná optimalizace je tak při tomto množství klíčová. Následující obrázek ukazuje srovnání scény se zapnutým raytracingem v reálném čase bez a taky s použitím DLSS v nastavení Quality.

44 Viz str. 26, kapitola Raytracing v reálném čase 43

Obrázek 18 Komparace vizuální kvality obrazu při využití technologie DLSS. Zdroj: autor práce

Na levé straně obrázku můžeme vidět scénu ze hry se spuštěním raytracing v reálném čase a vypnutým DLSS. PC Sestava ve složení procesor AMD Ryzen 7 3700X se základní frekvencí 3,6 GHz, 16GB operační paměti a grafická karta NVIDIA RTX 2080 Super, stíhá vykreslovat 60 snímků za sekundu při Full HD rozlišení. Jakmile jsme funkci DLSS spustili na nastavení Quality, počet snímků se zvýšil na 103, což představuje navýšení o téměř 42 %. Pokud DLSS přepneme na Performance, tedy volbu, při které se soustředí na co nejvyšší výkon, dostaneme se až na 115 snímků za sekundu, což je oproti původním šedesáti více jak 47% nárůst. Na kvalitě obrazu pozorovatelný rozdíl není.

Porovnání počtu snímků vykreslování bez funkce DLSS a s ní

Bez DLSS

DLSS Quality

DLSS Performance

0 20 40 60 80 100 120 140 počet snímků za sekundu

Graf 5 Porovnání počtu snímků vykreslování bez funkce DLSS a s ní Technologii DLSS vnímá jako přínosnou s velkým potenciálem i ředitel herního studia Triple Hill Interactive Peter Adamondy. Ten mi k této problematice poskytl osobní rozhovor dne 8. prosince 2020, ze kterého budu čerpat v následujícím odstavci.

44

DLSS se podle Adamondyho stane v budoucnosti běžnou záležitostí, jako například technologie anti-aliasingu, kterou dnes vidíme v nastaveních téměř každé hry. „Hlavním přínosem DLSS pro hry je snížení tlaku na výpočetní výkon. Vzhledem k tomu, že DLSS používá neuronové sítě, jednou z masivních výhod je emergentní vytvoření informace. Jinak řečeno, systém je schopen přidat informaci, tam kde by jinak nebyla. Takovou vlastnost neposkytuje žádná jiná metoda. V budoucnu je možné očekávat podobný princip (přes GAN - Generative Adversarial network) při texturách v hrách. Bude možné použít řekněme texturu v rozlišení 4K a zvýšit ji na 8K nebo klidně i 16K, čímž dosáhneme škálovatelnou kvalitu aniž by zabírala stovky nebo tisíce megabajtů na pevném disku jako to je nyní,“ říká Adamondy. Jedinou nevýhodou technologie DLSS je podle něj momentálně to, že ji podporují pouze grafické karty NVIDIE. „Je však velmi užitečné, že tento princip funguje na jakémkoliv obraze, tedy nejen ve videohrách, ale i při obrázcích či videích. V budoucnu tak budeme moci dívat filmy ve vysokém rozlišení i přesto, že byly nahrány v nižší kvalitě. Podobnou technologii už dnes dokonce používají některé televizory,“ dodává Peter Adamondy.

I když je uměle inteligentní technologie jako DLSS v mnoha případech velmi přínosná, právě úprava Adamondym zmíněných televizních programů, či filmových děl může narazit na konflikt s jejich tvůrci, kteří častokrát požadují vysílání díl v původní verzi. Jistá forma tohoto problému se projevila i v průběhu roku 2020, kdy se YouTuber Denis Shirayev rozhodl předělat několik ikonických historických záběrů do rozlišení 4K a frekvence 60 snímků za sekundu. I Když byl výsledek pro většinu moderního publika skutečně působivý, mnoho historiků Shirayeva prostřednictvím médií kritizovalo za podkopávání historie a zkažení původního zážitku z díla (Nicholson 2020).

4.5 Využívání technologií založených na umělé inteligenci v softwarech pro živé vysílání

4.5.1 NVIDIA Broadcast V průběhu posledního roku se kvůli celosvětové pandemii nového koronaviru přesunulo množství pracovních odvětví do online prostoru s cílem minimalizovat fyzický kontakt a snížit tak možnost šíření nákazy. Výjimkou tak nebyla ani kreativní zaměstnání a s příchodem první vlny, jak obecně nazýváme ve střední Evropě zhruba přelom prvního a druhého kvartálu roku 2020, se dramaticky zvýšil počet nejen online hovorů, porad a konferencí, ale také živých vystoupení, přednášek a různých webinářů. Aplikace pro video komunikaci, jako například Microsoft Teams nebo Zoom, zažily v tomto období více než čtyřnásobně větší poptávku po svých službách (Bary 2020). Podobný nárůst je možné sledovat i v živém vysílání na populární platformě Twitch, kde se za uplynulý rok zvýšil počet vysílajících až o téměř 80 procent a počet diváků o více než 65 procent. (Twitchtracker.com).

Na odvětví živého vysílání se zřejmě z těchto důvodů zaměřila i společnost NVIDIA a v září roku 2020 zpřístupnila veřejnosti už dříve předstatovanou aplikaci s

45

názvem NVIDIA Broadcast. Ta slouží jako jakýsi mezistupeň mezi hardwarem a aplikací, jejímž prostřednictvím vysíláme a umožňuje nám tak využívat její technologie při videohovorech, konferencích nebo jiných živých vysíláních. NVIDIA Broadcast obsahuje několik efektů založených na umělé inteligenci, které jsou poháněny tenzor jádry grafických čipů architektur Turing a Ampere a tudíž tuto aplikaci nelze využít k grafických kartách architektury Pascal nebo starších.

Mezi klíčové efekty, které Broadcast poskytuje, patří například tazkvaný Autoframe, který dokáže podle pohybu postavy na obrazovce inteligentně rámovat záznam a tedy umožňuje například uměle švenkovat s procházejícím se přednášejícím. Dalším efektem je například virtuální zelené plátno, které ořízne postavu před kamerou a umožní za ni vložit například předmět přednášky či semináře, nebo takzvané virtuální pozadí. Pomocí něj umíme tedy při vysílání nahradit prostor, ve kterém se reálně nacházíme, za jakýkoliv obrázek nebo fotku. Pozadí je v tomto případě také možné rozmazat, přičemž osoba v popředí zůstane ostrá. Broadacst obsahuje i efekt pro úpravu zvuku, který byl k dispozici jako samostatná aplikace již před jejím vydáním s názvem RTX Voice45. Její schopností je odstranit nežádoucí zvuky při řeči vysílajícího nebo posluchače. Když tedy budeme vysílat z rušného kancelářského prostoru nebo například pod širým nebem, tento efekt má za úkol hluk identifikovat a potlačit na minimum, přičemž hlas, který je primárním zdrojem zvuku, ponechává beze změny.

Obrázek 19 Příklad využití NVIDIA Broadcast a efektu virtuálního a rozmazaného pozadí.

4.5.2 Alternatíva s NVIDIA Maxine

Jak jsme již uváděli v předchozí kapitole, využití aplikace Nvidia Broadcast je podmíněno vlastněním grafické karty NVIDIA rady RTX 20 nebo 30, jejichž architektury obsahují nové tenzor jádra zaměřené na výpočty týkající se umělé inteligence. Jelikož jsou tyto čipy stále ve vyšší cenové kategorii a možnost vlastnit je nemá každý, poskytla Nvidia v říjnu minulého roku k dispozici také rozhraní s názvem Maxine. To ale není samostatnou novou aplikací, která by nabízela možnosti živého vysílání, ale funguje jako soubor nástrojů pro vývojáře video-konferenčních softwarů, umožňujíc jim využívat

45 Aplikace RTX Voice je od dubna 2021 přístupná i pro majitele starších karet než architektury Turing 46

prvky umělé inteligence na jejich vylepšení. Maxine by měla fungovat na principu cloudu a k využití jejích prvků nebude potřeba specializovaný hardware. V současnosti je ve stádiu předběžného přístupu a vyzkoušet je ji možné po registraci na NVIDIA portálu pro vývojáře.

Nvidia Maxine poskytuje navíc kromě prvků známých již z Nvidia Broadcast několik dalších klíčových technologií pro živé vysílání. Prvním je takzvaná Super Resolution, která pomocí umělé inteligence dokáže zvýšit rozlišení vysílaného obrazu například z 360p až na HD 720p. Dalšími z přidaných funkcí je například rozpoznávání řeči a tvorba poznámek nebo simultánní překlad z libovolného jazyka. Maxine také dokáže na námi vysílané video aplikovat kompresní algoritmus, který rozpoznává klíčové pohyblivé body obličeje a neměnícím se statickým obrazem nezatěžuje internetový přenos. Snižuje tak nárok na potřebnou rychlost internetu při videohovorech. Jedním z nejzajímavějších prvků NVIDIA Maxine je ale možnost vyrovnání obličeje, která dokáže zarovnat hlavu přednášejícího a jeho pohled přímo do kamery, pokud například čte z poznámek umístěných vedle kamery.

NVIDIA Broadcast a Maxine umožňují využití umělé inteligence pro zkvalitnění živých přenosů a videohovorů, které jsou v dnešní době součástí každodenní práce či studia pro mnohé z nás.

Jedním z pravidelných uživatelů Nvidia Broadcast je i Dimitrios Vallas, Environment Artist ve společnosti Hangar 13, který technologie této aplikace využívá zejména od doby, kdy musel kvůli celosvětové pandemii přejít na práci z domova. „Jelikož se často nacházím v hlučném prostředí a zároveň potřebuji uskutečňovat pracovní videohovory, Nvidia Broadcast a zejména její funkce RTX Voice mi častokrát pomohla odstranit nežádoucí hluk v pozadí a k ostatním účastníkům hovoru se dostal jen můj hlas,“ říká Vallas.

NVIDIA Broadcast se nedávno rozhodl použít i pedagog Divadelní fakulty Janáčkovy akademie múzických umění Jakub Mareš. Na technologii RTX Voice narazil se studenty na předmětu Zvuk v dabingu, kde ji chtěli hned otestovat. „Bohužel se mi ji s mou novou grafickou kartou NVIDIA RTX 3080 nepodařilo zprovoznit, ale to mohlo být způsobeno tím, že nová verze této technologie, optimalizovaná na nové architektury Ampere se nachází v NVIDIA Broadcast,“ říká Mareš. Po instalaci NVIDIA Broadcast byl studentům schopen předvést, jak může inteligentní potlačování hluku fungovat. „Všechny ty efekty jsou výborné na konferenční hovory nebo třeba online semináře, avšak v momentálním stadiu si jejich využití při zakázce představit moc neumím. Například Autoreframe, který umí velmi pěkně sledovat člověka v pohybu, by se teoreticky dal využít například při vysílání přednášky matematiky, kde vyučující chodí před tabulí. Jakmile by to však zbytek obrazu ořezávalo, musel by být tento materiál vysílán ve vysokém rozlišení, nebo by bylo nutné aplikovat další z NVIDIA technologií, a to takzvaný upscaling. Jsem tedy při těchto věcech skeptický. Pokud by šlo o větší zakázku, kde bychom podobné efekty potřebovali vyrobit, vsadil bych na starší hardwarovou variantu s použitím například zeleného plátna a kamerou by mohl hýbat 47

operátor. Bylo by to sice finančně náročnější, ale měl bych určitě větší jistotu, že to bude vypadat přesně tak, jak potřebuji,“ dodává Mareš.

4.6 Využitelnost těchto technologií pro studenty oboru Audiovizuální tvorba a divadlo Janáčkovy akademie múzických umění v Brně

V kapitolách věnovaným jednotlivým technologiím jsem se soustředil zejména na jejich podstatu, funkčnost a využitelnost v praxi. Právě proto jsem k jejich hodnocení využíval postřehy profesionálů, kteří s jmenovanými technologiemi a softwary pracují po většině na každodenní bázi. Protože je velmi pravděpodobné, že se s nimi během studia nebo absolventských praxí mohou setkat i studenti oboru Audiovizuální tvorba a divadlo, pokládám za nutné doplnit několik postřehů i z mého pohledu jako studenta a zároveň pracujícího ve svém oboru.

Pro mě je při práci velmi důležité se dokonale seznámit s prostředím, ve kterém budu po nějakou dobu tvořit, a tak častokrát věnuji nemálo času sledováním různých návodů či možností softwarových nastavení, protože mám zkušenost, že takto investovaný čas mou práci ve výsledku urychlí. Z tohoto zvyku plynula i moje motivace k psaní této diplomové práce, během níž jsem si každou z popisovaných technologií vyzkoušel. I když jsem neměl možnost strávit s každou z nich stovky hodin, jak to je u většiny v této práci citovaných respondentů, dokázal jsem si o jejich využitelnosti udělat přehled.

Největší důraz ze všech jmenovaných bych ponechal na technologiích hardwarových akcelerací, například MPE, NVENC, NVDEC či OPTIX, s nimiž je setkání studentů při jejich práci nejpravděpodobnější. Pochopení jejich fungování a správné zvolení jejich využití může značně urychlit práci například při postprodukci absolventských projektů i kvalitativně vylepšit výsledný produkt. Jejich použití navíc není složitým procesem, který by potřeboval náročnou optimalizaci a zdlouhavé testování.

Podobně jednoduše umíme pracovat i s popisovanými vysílacími aplikacemi pomáhajícím s vylepšením odesílaného obrazu či zvuku. Funkce potlačování ruchů RTX Voice může velmi efektivně sloužit například při vysílání open-air událostí, jako divadelních nebo hudebních festivalů, kde je velké riziko nežádoucích ruchů okolí. Obrazové technologie, jako například automatické rámování, můžeme použít při vysílání přednášek nebo diskusí. Problémem při těchto poměrně automatizovaných technologiích je však velmi malá možnost jejich přizpůsobení a nutnost spolehnutí se na umělou inteligenci.

O něco komplikovanější je ale práce s technologiemi jako Raytracing v reálném čase nebo DLSS, které vyžadují mnohem širší znalosti z prostředí počítačové grafiky a informatiky než ostatní výše jmenované. Jsou rovněž zaměřeny na užší skupinu technicky

48

zaměřených lidí, herních vývojářů, 3D grafiků nebo tvůrců vizuálních efektů. Navíc jsou i pro mnohé z nich velmi nové, ještě se s nimi jen seznamují, poprvé je zkouší implementovat do svých projektů. Je ale velmi zajímavé vidět tyto technologie působit i ve filmovém průmyslu a sledovat herní engine nahrazovat například zelené plátno. Při popisu těchto technologií jsem tak myslel hlavně na budoucnost průmyslu a možnost setkání se nynějších studentů s tímto stylem práce po absolvování jejich studia.

49

5. Závěr Hlavním cílem této diplomové práce bylo popsat možnosti zefektivnění práce v kreativních softwarech pomocí technologií spojených s grafickými procesory a kartami společnosti NVIDIA. K tomu, abych tohoto cílu mohl efektivně dosáhnout, jsem musel toto téma nejprve teoreticky ukotvit. V rozsahu několika kapitol jsem proto uvedl základní informace o grafických čipech a kartách jako takových, popsal jsme jejich klíčové části, z nichž sestávají a v krátkosti jsem popsal historii společnosti NVIDIA, která tyto technologie vyvíjí. Neméně důležitou kapitolou bylo i zachycení aktuálního stavu na trhu s grafickými kartami, s čímž se pojí i odůvodnění toho, proč jsem si pro svou práci vybral právě jednu společnost a popisoval její technologie.

Ve druhé, více praktické části práce, jsem se zaměřil na některé konkrétní technologie, které NVIDIA pro lidi pracující v tvůrčím prostředí nabízí. K tomu jsem si nejdříve stanovil dvě metody, pomocí kterých jsem ve většině případů postupoval, a to srovnávací analýzu a analýzu rozdílů v tvůrčích postupech. Vzhledem k podstatě a současnému stavu některých technologií jsem však nebyl schopen tyto metody uplatnit všude. Ať už šlo o možnosti akcelerace prostřednictvím grafické karty v jednotlivých softwarech, využití umělé inteligence pro usnadnění jinak zdlouhavé práce nebo možnosti vizuálního zlepšování produktu, jejich fungování jsem nejdříve teoreticky ukotvil. Popsal jsem, jak tyto technologie fungují a kde a za jakých okolností je můžu využívat. Následně jsem u většiny z nich provedl test, který byl stavěn tak, aby mohl ilustrovat rozdíl při využití dané technologie a jiné alternativní, kterou daný software nabízí. Několik z technologií, které v této práci uvádím, je však svou podstatou stavěných tak, že nevylepšují dosud jakýsi funkční systém, ale přinášejí zcela novou technologii, která dříve v tomto rozhraní nefigurovala, a tak je její porovnávání se staršími možnostmi irelevantní. V tomto případě proto tuto technologii pouze popisuji a čtenáře seznamuji s jejím výhodami či nevýhodami a uvádím příklady jejího využití. Následným krokem bylo uplatnění druhé mnou používané metody, a to prostřednictvím rozhovorů s pracovníky v tvůrčím prostředí, kteří byli ochotni se k mnou projednávaným technologiím vyjádřit a popsat své zkušenosti s nimi.

Díky osobním, ale i zprostředkovaným poznatkům od dotazovaných pracovníků, jsem dospěl k zajímavým závěrům. Tím klíčovým z nich je, že většina z vybraných technologií dokáže práci v tvůrčím prostředí značně zefektivnit, a to jak po stránce časové, tak i po stránce samotné vizuální úrovně vytvářeného produktu. Navíc jsem však v průběhu tvoření práce dospěl ke zjištění, že mnoho lidí pracujících v těchto softwarech o různých technologických možnostech nemá povědomí a využívá výchozí nebo jen mírně upravené nastavení, s nimiž sice k výsledku dospějí, ale častokrát za mnohem delší dobu, nebo využívají komplikovanější metodu. Dalším z mých zjištění je konstatování, že velká část z uváděných technologií se nachází na začátku své éry a dosud nabízí jen zlomek funkcí, na které má do budoucna potenciál. Proto tato práce může posloužit nejen samotným uživatelům těchto technologií, ale i pracovníkům společnosti NVIDIA, kteří z poznatků jejich zákazníků mohou čerpat cennou zpětnou vazbu.

50

6. Zdrojové materiály

6.1 Seznam obrázků

Obrázek 1 Komponenty grafické karty. Zdroj: autor práce ...... 5 Obrázek 2 Rozbor chladiče grafické karty. Zdroj: autor práce ...... 5 Obrázek 3 Podíl na trhu v oblasti grafických čipů. Zdroj: Jon Peddie Research ...... 11 Obrázek 4 Porovnání architektury Pascal a Turing. Zdroj: NVIDIA ...... 13 Obrázek 5 Vizualizace mezigeneračního rozdílu Tenzorových jader. Zdroj: NVIDIA . 14 Obrázek 6 Graf vizualizujíc poměr výkonu a ceny nové generace karet RTX30 s architekturou Ampere. Zdroj: NVIDIA ...... 15 Obrázek 7 Schéma fungováni dekóderu NVDEC a enkodéru NVENC. Zdroj: Nvidia . 18 Obrázek 8 Schéma fungování raytracingu. Zdroj: Wikipedia ...... 27 Obrázek 9 Vizualizace stupňů stínů. Zdroj: NVIDIA ...... 30 Obrázek 10 Rozdíl před a po použití denoiseru. Zdroj: NVIDIA ...... 30 Obrázek 11 Vizualizace rozdílu mezi stíny rasterizovanými a raytracovanými. Zdroj: autor práce ...... 31 Obrázek 12 Vizualizace rozdílu mezi odrazy rasterizovanými a raytracovanými. Zdroj: autor práce ...... 32 Obrázek 13 Vizualizace rozdílu mezi okolními okluzemi rasterizovanými a raytracovanými ...... 33 Obrázek 14 Vizualizace rozdílů v počtu vystřelených paprsků při okolních okluzích. Zdroj: YouTube - Microsoft DirectX 12 and Graphics Education ...... 33 Obrázek 15 Vizualizace rozdílu mezi globální iluminací s raytracingem a rasterizací. Zdroj: autor práce ...... 34 Obrázek 16 Předpověď využívaní raytracingu ve vykreslování. Zdroj: Jon Peddie ...... 36 Obrázek 17 Demonstrace dovedností neurálního filtru v Adobe Photoshop. Zdroj: autor práce ...... 42 Obrázek 18 Komparace vizuální kvality obrazu při využití technologie DLSS. Zdroj: autor práce ...... 44 Obrázek 19 Příklad využití NVIDIA Broadcast a efektu virtuálního a rozmazaného pozadí...... 46

51

6.2 Seznam grafů Graf 1 Porovnání času při enkódingu videa s GPU akcelerací a bez ní v Adobe Premiere Pro ...... 19 Graf 2 Porovnání času při enkódingu videa s efektem Object Removal při GPU s architekturou Pascal a Turing v DaVinci Resolve Studio ...... 21 Graf 3 Porovnání času při enkódování videa s GPU akcelerací a bez ní v DaVinci Resolve Studio ...... 22 Graf 4 Časové srovnání při renderingu s CUDA a OptiX ...... 38 Graf 5 Porovnání počtu snímků vykreslování bez funkce DLSS a s ní ...... 44

52

6.3 Literární zdroje

GLASSNER, Andrew S. 1989. And introduction to . Academic Press, ISBN 0-12-286160-4.

LIU, Edward, Ignacio LLAMAS, Juan CAÑADA a Patrick KELLY. 2019. Cinematic Rendering in UE4 with Real-Time Ray Tracing and Denoising. Ray Tracing Gems: High- Quality and Real-Time Rendering with DXR and Other APIs. 1. 289 - 301. ISBN 978-1- 4842-4426-5.

STICH, Martin, HAINES, Eric a Tomas AKENINE-MÖLLER, ed. 2019. RAY TRACING GEMS: High quality and realtime rendering with DXR and other APIs. New York: Apress, ISBN 978-1-4842-4426-5.

53

6.4 Internetové zdroje

ALDERSON, Alex. 2020. The NVIDIA GeForce RTX 3090 may have a 350 W TDP but it can consume nearly 60% more. Notebook Check [online]. 2020 [cit. 2020-11-22]. Dostupné z: https://lnk.sk/jsan

ARCHLINUX. 2020. Hybrid graphics. Archlinux [online]. [cit. 2020-12-01]. Dostupné z: https://wiki.archlinux.org/index.php/hybrid_graphics

ARMASU, Lucian. 2019. PCIe 6.0 Specification To Be Released By 2021. Tom's Hardware [online]. [cit. 2020-11-22]. Dostupné z: https://lnk.sk/exwo

BARY, Emily. 2020. Zoom, Microsoft Teams usage are rocketing during coronavirus pandemic, new data show [online]. [cit. 2020-11-07]. Dostupné z: https://lnk.sk/hjhz

BOUDREAU, Emmett. 2019. What On Earth Is A Tensorcore? Towards Data Science [online]. [cit. 2020-07-04]. Dostupné z: https://lnk.sk/mav1

BLENDER. 2020. Render Introduction [online]. [cit. 2020-10-06]. Dostupné z: https://docs.blender.org/manual/en/latest/render/workbench/introduction.html#id1

CABELEIRA, João Pedro Guerreiro. 2010. Combining Rasterization and Ray Tracing Techniques to Approximate Global Illumination in Real-Time [online]. Lisabon, [cit. 2020-11-04]. Dostupné z: https://lnk.sk/pb58. Magisterská práce. Universidade Técnica de Lisboa.

CAULFIELD, Brian. 2018. What’s the Difference Between Ray Tracing and Rasterization? [online]. [cit. 2020-04-15]. Dostupné z: https://lnk.sk/chuq

COSIC, Aleksandar. 2020. What Is NVLink And How Does It Differ From SLI? GPU Mag [online]. [cit. 2020-11-22]. Dostupné z: https://www.gpumag.com/nvlink-sli- difference/

HALE, Brent. 2018. Dedicated Graphics Card vs. Integrated Graphics: Which is Better for YOU? Techguided [online]. [cit. 2020-12-01]. Dostupné z: https://techguided.com/dedicated-graphics-card-vs-integrated-graphics/

KILGARIFF, Emmett, Henry MORETON, Nick STAM a Brandon BELL. 2018. NVIDIA Turing Architecture In-Depth [online]. [cit. 2020-06-28]. Dostupné z: https://developer.nvidia.com/blog/nvidia-turing-architecture-in-depth/

KONTKANEN, Janne a Samuli LAINE. 2006. Ambient Occlusion Fields [online]. [cit. 2020-10-31]. Dostupné z: https://web.archive.org/web/20060202100836/http://www.tml.tkk.fi/~janne/aofields/aof ields.pdf

54

LIBERI, Kim. 2020. The Virtual Production of The Mandalorian, Season One [online]. [cit. 2020-10-25]. Dostupné z: https://youtu.be/gUnxzVOs3rk

MCCLANAHAN, Chris. 2011. History and Evolution of GPU Architecture: A Paper Survey [online]. [cit. 2020-10-20]. Dostupné z: http://mcclanahoochie.com/blog/wp- content/uploads/2011/03/gpu-hist-paper.pdf

MOURS, Patrick. 2019. Accelerating Cycles using NVIDIA RTX [online]. [cit. 2020-10- 06]. Dostupné z: https://code.blender.org/2019/07/accelerating-cycles-using-nvidia-rtx/

NICHOLSON, Thomas. 2020. YouTubers are upscaling the past to 4K. Historians want them to stop [online]. [cit. 2021-03-20]. Dostupné z: https://www.wired.co.uk/article/history-colourisation-controversy NVIDIA. 2019. OptiX 6.0 Programming Guide [online]. [cit. 2020-10-06]. Dostupné z: http://raytracing-docs.nvidia.com/optix/ guide/index.html

PARKER, Steven. 2010. OptiX: A General Purpose Ray Tracing Engine [online]. [cit. 2020-10-06]. Dostupné z: https://lnk.sk/xhnw

PEDDIE, Jon. 2018. Is it Time to Rename the GPU? [online]. [cit. 2020-10-20]. Dostupné z: https://www.computer.org/publications/tech-news/chasing-pixels/is-it-time-to- rename-the-gpu

RAKE, Rachita. 2020. Graphic Processing Unit (GPU) Market: Graphic Processing Unit (GPU) Market by Type (Dedicated, Integrated, and Hybrid), Device (Computer, Tablet, Smartphone, Gaming Console, Television, and Others), Industry Vertical (Electronics, IT & Telecommunication, Defense & Intelligence, Media & Entertainment, and Others): Global Opportunity Analysis and Industry Forecast, 2020-2027. Allied Market Research [online]. [cit. 2020-11-27]. Dostupné z: https://www.alliedmarketresearch.com/graphic-processing-unit-market

SANDERS, Jason a Edward KANDROT. 2011. CUDA by Example: An introduction to general-purpose GPU programming [online]. Ann Arbor, Michigan: Edwards Brothers, [cit. 2020-06-29]. ISBN 0-13-138768-5. Dostupné z: http://www.mat.unimi.it/users/sansotte/cuda/CUDA_by_Example.pdf

SEXTON, Michael Justin Allen, Yannick GUERRINI a Pierre DANDUMONT. 2018. The History of Nvidia GPUs: NV1 to Turing [online]. [cit. 2020-10-18]. Dostupné z: https://www.tomshardware.com/picturestory/715-history-of-nvidia-gpus.html

SIDDI, Francesco. 2020. Blender by the Numbers: Blender Downloads Count [online]. [cit. 2020-10-09]. Dostupné z: https://www.blender.org/press/blender-by-the-numbers- 2019/

SMITH, Ernie. 2018. 3dfx History Failure. Tedium.co [online]. [cit. 2021-01-15]. Dostupné z: https://tedium.co/2018/02/14/3dfx-history-failure/

55

STAM, Joe. 2010. NVIDIA CUDA TECHNOLOGY IN ADOBE PREMIERE PRO AND THE NEW MERCURY PLAYBACK ENGINE [online]. [cit. 2020-10-16]. Dostupné z: https://lnk.sk/ir17

TACK, Stanley. 2019. NVIDIA RTX at Center of NAB Show, Powering New Updates for Top Creative Apps. Nvidia [online]. 2019 [cit. 2020-11-15]. Dostupné z: https://blogs.nvidia.com/blog/2019/04/10/nvidia-rtx-powers-top-creative-apps/

TALEVSKI, Julia. 2010. ATI to be re-branded as AMD [online]. 2010 [cit. 2020-10-20]. Dostupné z: https://www.arnnet.com.au/article/358774/ati_re-branded_amd/

THOMSEN, Mike. 2012. History of the Unreal Engine [online]. [cit. 2020-10-24]. Dostupné z: https://www.ign.com/articles/2010/02/23/history-of-the-unreal-engine

VERMA, Akshat. 2020. Graphics Card PCI-E 6-Pin & 8-Pin Connectors Explained. Graphics Card Hub [online]. [cit. 2020-11-22]. Dostupné z: https://lnk.sk/vgo8

WALTON, Jarred. 2020. AMD vs Nvidia: Who Makes the Best GPUs? Tom's Hardware [online]. [cit. 2020-11-25]. Dostupné z: https://lnk.sk/lxa2

WHITEHEAD, Andrew. 2020. Using the right ‘Rate Control’ in OBS for streaming or recording. Mobcrush [online]. [cit. 2020-11-10]. Dostupné z: https://lnk.sk/gmj6

WU, Jun. 2019. AI, Machine Learning, Deep Learning Explained Simply. Towards Data Science [online]. [cit. 2020-11-11]. Dostupné z: https://lnk.sk/ejk8

56

6.5 Seznam Příloh Příloha A Vytížení komponentů během testu v Adobe Premiere Pro Příloha B – Vytížení komponentů během testu v Davinci Resolve Studio Příloha C – Vytížení komponentů během testu v Open Broadcast Software Příloha D – Degradace materiálu k ušetření výkonu při raytracingu Příloha E – Ilustrace uměleckého uchopení hry Control od Remedy Entertaiment Příloha F – Funkce Inpainting technologie NVIDIA NGX Příloha G – Ukázka artefaktu při použití funkce Inpainting technologie NVIDIA NGX Příloha H – Ukázka rozhraní Neural Filters v Adobe Photoshop CC Příloha I – Rozhovory s pracovníky v kreativních prostředích

57

7. Přílohy

Příloha A – Vytížení komponentů během testu v Adobe Premiere Pro (obrázky)

Vytížení komponentů během renderu videa hardwarovým enkódingem s použitím enkóderu NVENC

1

Vytížení komponentů během renderu videa softwarovým enkódingem (jen CPU)

Vytížení komponentů během renderu videa softwarovým enkódingem (CPU a GPU akcelerace)

2

Příloha B – Vytížení komponentů během testu v Davinci Resolve Studio (obrázky)

Vytížení komponentů během renderu videa s aplikovaným efektem Object Removal s grafickou kartou NVIDIA GTX 1070

3

Vytížení komponentů během renderu videa s aplikovaným efektem Object Removal s grafickou kartou NVIDIA RTX 2080 Super

4

Příloha C – Vytížení komponentů během testu v Open Broadcast Software (obrázky)

Vytížení komponentů během vysílaní v OBS softwarovým enkódingem s presetem ultrafast

5

Vytížení komponentů během vysílaní v OBS softwarovým enkódingem s presetem medium

6

Vytížení komponentů během vysílaní v OBS softwarovým enkódingem s presetem slower

7

Vytížení komponentů během vysílaní v OBS hardwarovým enkódingem NVENC s presetem Max Quality

8

Příloha D – Degradace materiálu k ušetření výkonu při raytracingu (obrázek)

Zdroj: NVIDIA.

Na levé straně obrázku můžeme vidět původní materiál a na pravé straně o něco degradovanou verzi téhož materiálu

9

Příloha E – Ilustrace uměleckého uchopení hry Control od Remedy Entertaiment (obrázek)

Zdroj: medium.com

10

Příloha F – Funkce Inpainting technologie NVIDIA NGX

Zdroj: NVIDIA

11

Příloha G – Ukázka artefaktu při použití funkce Inpainting technologie NVIDIA NGX (obrázek)

Zdroj: YouTube - VFX Kitchen

12

Příloha H – Ukázka rozhraní Neural Filters v Adobe Photoshop CC (obrázek)

13

Příloha I – Rozhovory s pracovníky v kreativních prostředích (rozhovory)

Rozhovor z 29. září 2020 s Vladimírem Jaškem, Senior video artistem ve společnosti Bohemia Interactive

V jakém rozsahu využíváte raytracing při práci v Unreal Engine?

Jelikož jsme dosud pracovali na hře určené primárně pro konzole jako Xbox One nebo Nintendo Switch, jejichž grafické čipy podporu raytracingu nemají, nemohli jsme raytracing aplikovat přímo do hry. Jeho funkce však využíváme často například při tvorbě trailerů, kde nám pomáhá k tvorbě vizuálně kvalitnějších scén jako rasterizace. Velmi často využíváme zejména raytracované ambientní okluze a stíny, které jsou mnohem přesnější než jejich matematicky dopočítané varianty a navozují pro trailer potřebný fotorealistický vizuál. Sice to zní jako banalita, ale pokud máme v Unrealu na zemi rozházené například nábojnice, ony jsou v té velké scéně tak malé, že nám při Screen Space ambientní okluze nevrhají žádný stín. Pokud se k ní kamerou přiblížíme, působí to pak, že je pár milimetrů nad zemí. Jakmile však stíny ambientní okluze přepneme do raytracingu, všechny ty malé nábojnice a další věci na zemi, všechny listy a všechny větve stromů přes sebe začnou vrhat krásné stíny a tehdy si řekneme: tak to už je render. Proto zvykneme raytracing využívat zejména na úvodní sekvence trailerů.

Stíny a ambientní okluze jsou ale jen část toho, co raytracing v Unreal Enginu poskytuje. Jaké zkušenosti máte například s globální iluminací?

Tak máme i části, kde naopak preferujeme rasterizaci. Například při globální iluminaci jsme zatím nedospěli k nastavení, kde by nám to vlivem šumu a následného denoisingu jakoby neplavalo. Když se ten početný šum na velkých plochách, jakými jsou například stěny místnosti rozmaže, vždy nám tam vznikají různé plovoucí fleky. Problémy máme i s dekály. To jsou jakoby poloprůhledné nálepky, které aplikujeme na 3D modely. Může to být například krev nebo různá koroze na kovových předmětech, která se nekreslí do modelu přímo, protože by se vždy nacházela na stejném místě. Dekály proto aplikujeme samostatně, a právě s nimi má u nás raytracing problém. Tvoří v kombinaci s ním různé bugy. Takže si umím představit, že kdybychom raytracing chtěli aplikovat do celého projektu, vytvořilo by to zřejmě mnoho takových podobných problémů, ale zároveň by hra byla vizuálně hezčí. V momentálním stadiu technologie raytracingu v reálném čase tedy musíme dělat ústupky, případně tomu přizpůsobit samotnou uměleckou a technickou stránku videohry, jak to udělal třeba Control. Ty rovné poloreflexní plochy, které tam vidíme, jsou pro demonstraci raytracingu naprosto ideální.

Často pracujete i v softwaru Blender. Zaznamenali jste změnu v svém workflow, od doby, kdy vlastníte grafickou kartu série RTX20?

Ano ta změna je markantní a určitě jsem ji nezaznamenal jen já, ale i ostatní kolegové. Od doby, kdy využíváme render přes Optix, ušetříme spoustu času. Na scénách 14

míváme často například volumetrickou mlhu, která světelné paprsky ještě láme a když jsem něco podobného musel renderovat na staré GTX grafické kartě, nastavil jsem světlo, spustil render a druhý den jsem se na výslednou scénu mohl podívat. Teď to vidím se správným nastavením vzorkování ve finální podobě za pár vteřin. Bez OptiXu bych dokázal pracovat už jen v počátečních fázích práce, kdy se věnuju modelování 3D objektů. Jakmile se přesuneme do fáze, kdy musíme scénu nasvítit tak aby byla využitelná pro herní trailer, bez OptiXu se už neumíme obejít. Od doby, kdy používáme karty rady RTX a rozhraní OptiX, na práci s enginem Cycles se doslova těším. Předtím, se starými grafickými kartami byla pro mě práce s raytracingem v blenderu spíše nechtěnou povinností.

Rozhovor z 2. října 2020 s Igorem Stankem, Senior Technical Product Managerem ve společnosti Nvidia

Jaké faktory vedly k tak velkému mezigeneračnímu skoku, jak to bylo v roce 2018 při architektuře Turing?

My děláme vývoj karet na přibližně 7 až 8 let dopředu. Architektura Turing a raytracing v reálném čase se tedy začal řešit někdy v roce 2011 nebo 2012. Rozhodnutí přidat další Turing a raytracing Jádra přišlo už zhruba někdy tehdy, takže to jde tak nějak postupně. Každopádně narážíme na limity výrobních technologií a také právě proto přistupujeme například k inteligentní rekonstrukci obrazu, protože vykreslovat stále větší rozlišení na stále menších čipech se nedá do nekonečna.

Nejnovější architektura Ampere by měla být značně výkonnější než předešlý Turing. Jaké faktory přispěly k tomu, že je možné například RTX 3070 prodávat za téměř poloviční sumu co RTX 2080, jejíž výkon má obsahovat?

No jednak se trochu vyvíjí ta architektura a také je to dáno tím, že jsme přešli od 12 nanometrovým výroby u společnosti TSMC k 8 nanometrů u Samsungu. Čip je tedy ještě o něco menší a náklady na výrobu jsou výrazně nižší. Proto si můžeme i při zachování jisté marže dovolit prodávat ty karty levněji.

Nakolik vstupuje Nvidia do procesu vývoje hry, ve které je aplikovaný raytracing v reálném čase?

V podstatě ze začátku byli naši inženýři, kteří se o raytracing starají, dost vytížení, protože vývojáři těch prvních her, jako byl například Battlefield, se s tím učili dělat a samozřejmě potřebovali jistou úroveň podpory. Nyní je té podpory čím dál tím méně. Ta technologie je přístupnější, vývojáři jsou zkušenější a dnes se naši inženýři zaměřují například spíše na podporu při implementaci technologie DLSS. To škálování například do 8K dává i současným kartám strašně zabrat a je důležité to vhodně optimalizovat.

Musí být hra na raytracing nějak speciálně přizpůsobená? Je potřebné, aby textury a materiály splňovaly nějaké standardy?

15

No někdy se setkáváme s mýty v oblasti toho, jak Nvidia s vývojáři funguje. My určitě nejsme diktátoři, kteří by jim diktovali, aby něco udělali tak či onak. Na druhou stranu oni nejsou hloupí a vědí, že čímž složitější ta geometrie hry bude, tím to bude problematičtější. Nedávno jsme to řešili například při nové expanzi do hry World of Warcraft. Tam jsme pracovali na implementaci raytracovaných stínů, avšak jelikož dříve v té hře se žádným raytracing nepočítali, je tam strašně málo shadowcasterů, o které bychom se mohli zachytit. Pokud tedy spustíme raytracované stíny, zažijeme ve hře jistý výkonnostní pokles a výsledek nebude až tak patrný. Když však dnes nějaký projekt počítá s raytracing předem, výsledky jsou pochopitelně mnohem lepší.

Myslím, že mnoho lidí, kteří pracují s videem, potěšilo, že enkóder NVENC a dekóder NVDEC přišli tento rok do Adobe Premiere Pro. Problém, který však stále přetrvává je množství kodeků, které tyto kodéry podporují. Můžeme v buducnosti očekávat jejich přidání?

Přiznám se, že přesně nevím, jak na tom budou nové Ampere karty série Quadro. Protože pokud někdo profesionálně pracuje s videem, jsou tyto karty celkově vhodnější, dokážou využít více streamů než standardní GeForce karty a podobně. Momentálně je v kartách RTX30 sedmá generace NVENC, podobně jako to bylo v kartách architektury Turing, takže markantnější změny bychom mohli vidět zřejmě v příští generaci.

Rozhovor z 9. října 2020 s Ronem Haimovem, Senior Lighting Artistem ve společnosti Hangar 13 a bývalým zaměstnancem společnosti Remedy Entertaiment

Jak probíhala implementace raytracingu do hry Control?

Většina všeho potřebného byla naprogramována již uvnitř Northlight enginu, který jsme používali, a tak bylo mou prací pouze správně nastavit počet vystřelovaných paprsků a jejich obrazů tak, aby hra dokázala běžet na přibližně třicet až 60 snímků za sekundu.

Byla Nvidia zapojená do procesu vývoje?

Ano, a to dost markantně. Několik jejich inženýrů bylo přímo v našem studiu a několik dalších s námi pracovalo na dálku. Měli jsme možnost pracovat s novými RTX kartami ještě před tím, než byly představeny veřejnosti a když jsme narazili na jakýkoliv problém s jejich technologií, pomáhali nám to vyřešit.

Jak jste pracovali se šumem, který díky raytracingu vzniká? Jaký denoiser jste používali? V Northlight engine máme implementován vlastní denoiser, který jsme používali vždy. Při práci na hře Control jsme k němu přidali i denoiser od NVIDIE a výsledek byl velmi dobrý.

Narazili jste při vývoji na situace, kdy se rasterizační techniky zdály lepší než raytracing?

16

Zatím jsem situaci, kdy raytracing vypadá nebo působí hůř než rasterizace, neviděl. Často se však stává, že je výsledek podobný, raytracing ubírá více výkonu.

Rozhovor z 30. září 2020 s Dimitriosem Vallasem, Environment Artistem ve společnosti Hangar 13.

Jak byste popsal rozdíl mezi prací v softwaru Blender po výměně grafické karty za kartu ze série RTX 20?

Od momentu, kdy Blender začal podporovat rozhraní OptiX a grafické karty RTX a já jsem si ji zakoupil, dokážu pracovat mnohem efektivněji, protože vidím náhled své práce v reálném čase a už nemusím čekat na jeho vykreslení s dlouhým denoisingem. Mnohem rychleji tak dokážu texturovat a upravovat světlo na scéně, přičemž se pořád dívám na finální výsledek. Při využívání staršího grafického čipu, který OptiX nepodporoval, jsem musel v závěrečné fázi práce po i jen malé úpravě světla spustit render a několik minut čekat na vykreslení celé scény. Pokud jsem s výsledkem spokojený nebyl, opět jsem musel světelný zdroj přesunout nebo poopravit, spustit render a čekat znovu. Nyní mi celý tento proces trvá jen několik sekund.

Využíváte i nějaké jiné technologie od NVIDIE?

Vyskoušel jsem témeř vše, pravidelně využívám například funkci RTX Voice v Nvidia Broadcast. Jelikož se často nacházím v hlučném prostředí a zároveň potřebuji uskutečňovat pracovní videohovory, Nvidia Broadcast a zejména její funkce RTX Voice mi častokrát pomohla odstranit nežádoucí hluk v pozadí a k ostatním účastníkům hovoru se dostal jen můj hlas, což je super.

Grafické karty ze série RTX 20 byly zpočátku poměrně drahé. Řekli byste, že se její koupě opravdu vyplatila a koupili byste si ji po současných zkušenostech znovu?

Určitě bych si ji koupil znovu. Prakticky žádné negativum v souvislosti s RTX uvést nemohu, ale v momentální situaci bych už ale pochopitelně sáhl po architektuře Ampere a tudíž kartám ze série RTX30, jelikož jejich poměr cena-výkon je výborný.

Rozhovor z 26. listopadu 2020 s Petrem Rackem, střihačem a koloristou na volné noze

Z jakého důvodu/důvodů preferujete Davinci Resolve Studio před ostatními postprodukčními softwary?

Předtím, než jsem se dostal k Resolve, jsem byl zvyklý pracovat v Adobe Premiere Pro, avšak ten často padal a také mi vadily poměrně vysoké měsíční platby, které jsem za Adobe balíček musel platit. Jako hlavní důvod bych ale uvedl to, že Resolve je dost orientované na výkon GPU a náročnější efekty zpracovává mnohem lepší než konkurence. 17

Využíváte efekty neurální Enginu v Davinci Resolve?

Často se věnuji postprodukci televizních reklam, natáčených na filmové kamery s vysokým rozlišením, které způsobuje, že je na záznamu častokrát vidět nedokonalosti na tvářích herců, které je nutné retušovat. K tomu používám právě efekty neurálního enginu, pomocí kterých mohu aplikovat různá nastavení například pro oblast čela, nosu či očí herce a na potřebném místě rozmazat jeho pleť.

Jakou grafickou kartu momentálně využíváte?

Momentálně mám Nvidia GTX 1070. Několikrát jsem tedy při Neurálním Enginu na omezení kvůli nedostatku VRAM narazil. Na jaře se už ale chystám koupit si novou kartu. Když jsem si dělal předběžný průzkum, narazil jsem i na novou sérii karet AMD, z nichž má i ten nejlevnější model 16 gigabajtů paměti. Cenově srovnatelný model od NVIDIE má jen 8 gigabajtů. Rozumím, že Nvidia bude mít v Resolve pravděpodobně lepší optimalizaci, protože s nimi spolupracuje, ale doufám, že když se více lidí rozhodne pro AMD, budou se vývojáři tohoto a dalších podobných softwarů snažit podporu karet a jejich technologií více vyvážit.

Rozhovor z 9. listopadu 2020 s Chrisem Flaerim, častým uživatelem Open Broadcast Studio

Jaký enkóding používáte při živém vysílaní v softwaru OBS a proč? Od doby, kdy vlastním grafickou kartu, která má vlastní enkodér, používám vždy ten hardwarový, takže v tomto případě je to NVENC. Když jsem využíval softwarový enkóding, častokrát jsem narážel na problém, kdy při vysílání zabíral 50 procent výkonu procesoru software, jehož záznam jsem vysílal a až 50 zbývajících procent ubíralo samotné OBS. S tak vytíženým procesorem se pak nedá pracovat. Sice už vlastním výkonnější procesor než tehdy, ale komponenty jsou při NVENC mnohem méně vytížené.

Jsou přece jen situace, kdy volíte spíš softwarový enkóding, nebo vůbec? Pokud nevysílám živě, ale pouze nahrávám záznam obrazovky, využívám k tomu často funkce CQP nebo CRF, které umožňují nahrávání bezztrátového záznamu. Ty tvoří přirozeně velké soubory na disku, avšak po čase jsem přišel na to, že když nahrávám záznam pomocí CRF se softwarovým enkódingem, dostanu kvalitativně téměř stejný materiál, jako když nahrávám s CQP přes kartu, avšak samotné soubory videa mají menší velikost a nezahlcují mi natolik disk. Pokud tedy mám k dispozici výkonný procesor, raději v tomto případě volím softwarový enkóding a CRF

Rozhovor z 1.prosince 2020 s fotografem Davidem Annisem

Jaká byla Vaše reakce na oznámení neurálních filtrů v Adobe Photoshop?

18

Na umělou inteligenci, která by mi například při retušování fotek pomohla jsem už nějakou dobu čekal, a tak jsem po aktualizaci Photoshopu hned tyto filtry vyzkoušel. Byl jsem však spíše zklamán. Po použití efektu vyhlazování pleti, tedy retuše, kterou běžně provádím manuálně, se pleť modelky jakoby rozpila a nepůsobila přirozeně. Podobně to bylo i s umělečtějšími filtry, které podle mě obsahují velmi málo možností pro přizpůsobení.

Jsou pro vás momentálně tyto filtry použitelné při práci?

Jelikož se věnuji umělecké portrétové fotografii, nepřijde mi vhodné tyto filtry využívat. Pokud není možné smysluplně ovládat výstup, přestává to pro mě být tvorbou uměleckého díla a spíše bych to nazval aplikováním speciálních efektů. Pevně doufám, že plná verze neurálních filtrů se zlepší ve výsledcích, ale i možnostech ovládání.

Rozhovor z 8. prosince 2020 s Petrem Adamondym, ředitelem herního studia Triple Hill Interactive

To, že má technologie DLSS přínos pro hráče, si můžeme kdykoliv otestovat, avšak vnímáte ji jako přínos i pro vývojáře her?

Hlavním přínosem DLSS pro hry je snížení tlaku na výpočetní výkon. Vzhledem k tomu, že DLSS používá neuronové sítě, jednou z masivních výhod je emergentní vytvoření informace. Jinak řečeno, systém je schopen přidat informaci tam, kde by jinak nebyla. Takovou vlastnost neposkytuje žádná jiná metoda. V budoucnu je možné očekávat podobný princip (přes GAN - Generative Adversarial network) při texturách v hrách. Bude možné použít řekněme texturu v rozlišení 4K a zvýšit ji na 8K nebo klidně i 16K, čímž dosáhneme škálovatelnou kvalitu aniž zabírala stovky / tisíce megabajtů na pevném disku, jak tomu je nyní.

Má podle vás DLSS v současném stavu nějaké nevýhody?

Jedinou nevýhodou technologie DLSS je momentálně to, že ji podporují pouze grafické karty NVIDIE. Je však velmi užitečné, že tento princip funguje na jakémkoliv obraze, tedy nejen ve videohrách, ale i při obrázcích či videích. V budoucnu se tak budeme moci dívat filmy ve vysokém rozlišení i přesto, že byly nahrány v nižší kvalitě. Podobnou technologii už dnes dokonce používají některé televizory.

Rozhovor z 30. listopadu 2020 s Jakubem Marešem, pedagogem Janáčkovy akademie múzických umění v Brně

Jaké máte zkušenosti s Nvidia Broadcast?

Se studenty na předmětu Zvuk v dabingu jsem narazil na technologii RTX Voice a hned jsme ji chtěli otestovat. Bohužel se mi ji s mou novou grafickou kartou Nvidia RTX 3080 nepodařilo zprovoznit, ale to mohlo být způsobeno tím, že nová verze této technologie

19

optimalizovaná na nové architektury Ampere se nachází již v Nvidia Broadcast. Po instalaci Nvidia Broadcast jsem byl studentům schopen předvést, jak může inteligentní potlačování hluku fungovat.

Umíte si představit využití Nvidia Broadcast například při zakázce živého vysílání?

Všechny ty efekty jsou výborné na konferenční hovory nebo třeba online semináře, avšak v momentálním stadiu si jejich využití při zakázce představit moc neumím. Například Autoreframe, který umí velmi pěkně sledovat člověka v pohybu, by se teoreticky dal využít například při vysílání přednášky matematiky, kde vyučující chodí před tabulí. Jakmile by to však zbytek obrazu ořezávalo, musel by být tento materiál vysílán ve vysokém rozlišení, nebo by bylo nutné aplikovat další z Nvidia technologií, a to takzvaný upscaling. Jsem tedy skeptický. Pokud by šlo o větší zakázku, kde bychom podobné efekty potřebovali vyrobit, vsadil bych na starší hardwarovou variantu s použitím například zeleného plátna a kamerou by mohl hýbat operátor. Bylo by to sice finančně náročnější, ale měl bych určitě větší jistotu, že to bude vypadat přesně tak, jak potřebuji.

20