Mnohonásobný buffering

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Mnohonásobný_buffering je technika používaná při streamování videa nebo audia, která slouží k minimalizaci výpadků při přehrávání obsahu. Jedná se o situaci, kdy je předem načteno a uloženo více dat než je potřeba pro okamžité přehrání. Tím se zajišťuje plynulé přehrávání i při nízké rychlosti internetového připojení nebo v případě krátkodobého výpadku připojení. Mnohonásobný buffering funguje tak, že se datový proud rozdělí na menší bloky, které se postupně načítají a ukládají do bufferu. Při přehrávání obsahu se pak čte data z bufferu namísto přímého stahování ze serveru. Tato technika se používá zejména při streamování živého obsahu a je důležitá pro plynulé přehrávání videa nebo audia bez záseků a přerušení.

Mnohonásobný buffering je termín, v informatice označující použití celkově více než jedné vyrovnávací paměti (bufferu) pro držení bloku dat tak, aby "čtecí" zařízení tento blok vidělo jako kompletní celek, a než se vytvoří další kompletní celek (který nahradí ten minulý), čtecí zařízení vidí pouze jeho starší - poslední - kompletní verzi, ne jako průběžně se aktualizující data "zapisovačem". Nejčastěji se používá v počítačové grafice, ale jeho použití není výjimkou ani v jiných odvětvích informatiky. Používá se vždy tam, kde potřebujeme mít data poskládána jako celky, ne jako kus novější a kus starší verze.

Popis

Nejlepší bude vysvětlit princip mnohonásobného bufferingu v praxi:

Programátor vytváří svůj program, který využívá grafického prostředí. Bude to nějaký jednoduchý program, protože programátor toho zatím moc neumí. +more Když program doprogramuje, spustí ho. V tom se podiví - jeho program funguje, ale obrazovka nějak nepříjemně pořád problikává. Zároveň se mu zdá, že horní část obrazu je nějak "posunutá" na jednu stranu a dolní část na druhou. Programátor je zklamaný, a tak tento problém hledá na internetu. Řešení najde právě v použití několikanásobného bufferingu.

Tedy grafická karta standardně vykresluje obraz přímo na monitor, bez jakéhokoli čekání. To znamená, že obraz na monitoru se překresluje průběžně. +more To je viditelné obzvlášť u her a je to velmi otravné. Řešení spočívá v použití vyrovnávací paměti - do té se ukládá aktuální podoba obrázku tak, jak ho vykresluje grafická karta, a až je kompletní, tak se přesune na monitor (přesněji do bufferu monitoru), kde nahradí obraz minulý. My na monitoru vidíme pouze sled kompletních obrazů. Tím odpadají oba problémy, které měl náš mladý programátor.

Double buffering

Nejběžnější a nejpoužívanější verzí je bezesporu double buffering, ve kterém, jak název napovídá, se používají dva buffery (pozor - monitor má taky jeden svůj buffer). Jeden je použit jako plocha pro zatím nekompletní obrazy (virtuální - pouze v paměti počítače), a druhý (monitor) je použit pro kompletní obrazy. +more Využívá ho většina počítačových a konzolových her.

Triple buffering

Triple buffering je varianta double bufferingu, která využívá tři buffery - dva virtuální a jeden "fyzický" - monitor. Její skutečné kouzlo spočívá ve zrychlení snímkové frekvence - počtu snímků za sekundu a tím pádem celé hry (programu). +more V double bufferingu musí počítač vyčkat, než bude jeden obraz dovykreslen a přesunut na monitor, aby mohlo začít vykreslování dalšího. To znamená snížení odezvy a snímkové frekvence. To v triple bufferingu není nutné - zde se vykreslují dva snímky najednou (ve virtuálních bufferech), a s určenými rozestupy se pak vykreslují na monitor. To znamená zrychlení snímkové frekvence, ale zároveň to potřebuje více paměti.

Odkazy

Reference

Externí odkazy

[url=http://www. svethardware. +morecz/art_doc-62B560C14272B24BC1256738005793B4. html]Článek o triple bufferingu i s obrázky[/url] * [url=http://www. svethardware. cz/art_doc-327907BA3A4B98A5C1256738005793B3. html]Článek na tom samém serveru, ale o double bufferingu[/url].

Kategorie:Algoritmy počítačové grafiky

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top