Hlavní navigace

Jdeme do online videa (2.)

28. 7. 2006
Doba čtení: 10 minut

Sdílet

Autor: 29
V předchozím dílu jsme se seznámili se základními druhy šíření videa po Internetu a krátce zhodnotili jeho českou historii. Dnes se zaměříme na řešení QuickTime, H.264 AVC, RealVideo a Ogg Theora a probereme také problematiku výběru a porovnání kodeků.

QuickTime

QuickTime je řešení Apple, které se začalo vyvíjet před 15 lety a za tu dobu prošlo řadou proměn; například i Microsoft WMP/WMV řešení bylo reakcí na QuickTime. Dnes představuje QuickTime také multiplatformní řešení, neuzavřené jen na svět Mac OS – a to především v klientské rovině, v rovině serverové byste s Mac OS měli také počítat.

QuickTime je díky své historii prapůvodcem mnoha standardů a například standard pro širokopásmové video H.264/AVC je v QuickTimem bohatě inspirován (=odvozen), což Apple neopomene zdůraznit.

Na Apple počítačích je Quicktime přehrávač zdarma předinstalován, pro Windows si jej lze stahovat zdarma, existuje placená verze vybavená hlavně enkoderem pro převod do QuickTime formátu. Přehrávače v jiných systémech lze vybavit kodekem Quicktime Alternative, pokud podporují DirectShow. Dlužno podotknout, že na Windows platformě se QuickTime důstojně zabydluje díky tomu, že se instaluje spolu s iTunes jako software pro iPody. To všechno v současné době řadí QuickTime formát na třetí místo v rozšíření videopodpory na osobních počítačích.

Co se serverového řešení QuickTime týká, tam je v současné době být třeba na pozoru. Pravdou je, že když si koupíte XServe od Apple, tak v rozkošném 1U racku začínajícím na řádově 80.000 korunách dostanete nejenom slušný hardware, ale též Mac OS X Server včetně QuickTime Streaming Server, s nímž můžete ihned rozjet distribuci streamovaného videa (pokud se obtěžujete připojit server do Internetu ovšem).

Drobnou zradou je, že serverová verze Mac OS ještě nepodporuje Universal Binary distribuci určenou pro procesory Intel a Apple ani zatím nemá XServe postavený na Intel procesorech, zatímco PowerPC procesory jdou u Apple rychle z módy. Očekává se, že ještě letos uvede Apple nástupce XServe na intelovských procesorech s jádrem Woodcrest a s Universal Binary distribucí – takže jestli toužíte po QuickTime, počkejte si.

Pokud toužíte po podpoře QuickTime serveru na jiných operačních systémech, dobrou zprávou je, že Apple uvolnil většinu zdrojových kódů pod svou verzí open-source licence v rámci programu Darwin jako Darwin Streaming Server. S ním si můžete hrát pod Windows, Linuxem i Solarisem a oproti QuickTime serveru přicházíte jen o integrované administrační rozhraní na konzoli, musíte si vystačit s webovou administrací, což nebude na škodu, a také nástroje pro správu médií jsou jen pro Mac.

Pokud chcete výkonný server pro streaming QuickTime videa či MPEG-4, je Darwin SS výborná varianta.

H.264 AVC

Standard H.264 je momentálně „nejstandardnějším“ ze všech moderních širokopásmových videoformátů. Standardizován byl ITU pod názvem H.264 ve spolupráci s ISO/IEC Moving Picture Experts Group, kde byl pojmenován MPEG-4 Part 10 (formálně jako SO/IEC 14496–10). Zkratka AVC značí Advenced Video Coding a vztahuje se k standardizaci MPEG skupinou.

Tato dvojí identická standardizace má svůj význam. H.264 se díky tomu dostává jak na mobilní telefony (jako formát 3GP), tak na další rádiové technologie prostřednictvím evropského standardizátora ITU – například do vysílání DVB nebo do předpokládané evropské TV s vysokým rozlišením (HDTV). Prostřednictvím standardizace v MPEG skupině se zase H.264 dostává jako podporovaný formát budoucích vysokorozliši­telných DVD – ať již HD DVD nebo Blue-Ray.

Z hlediska technické perspektivy lze H.264 pokládat za do budoucna nejrozšířenější formát. To ovšem nevypovídá nic o situaci v nejbližší době, protože HDTV i HD DVD je ještě daleko.

Tak především za použití kodeku H.264 je třeba platit poplatky. Do roku 2010 jsou od nich osvobozena vysílání po Internetu (streaming, nikoliv Video on Demand), která jsou zdarma. Za ostatní použití je třeba platit kolem 25 amerických centů (další podrobnosti o licencování [PDF, 27 kB]).

Jaké budou poplatky po roce 2010, se zatím neví.

Vzhledem k tomu v současné době nejsou kodeky pro H.264 ve Windows ani v dalších operačních systémech kromě Mac OS X přeinstalovány a je nutné je instalovat zvláště. V praxi je pro použití H.264 vhodné instalovat multiplatformní přehrávač VLC spolu s kodekem.

Kodek je třeba si koupit, existují ale také dvě open-source implementace, a to x264 a Hdot264. Řada komerčních kodeků je dostupná, použijte Google – ceny jsou od cca 20 dolarů výše. Je třeba si uvědomit, že H.264 definuje řadu různých profilů, které je možné pro video používat, a ne každý kodek – a to se týká především (a nejenom) těch OS kodeků – má implementované všechny profily. Za momentálně nejrychlejší komerční kodek se považuje CoreAVC od CoreCodec.

Je zřejmé, že H.264 má před sebou slušnou budoucnost, například je to vlastně jediný kodek, se kterým se budeme běžně potkávat v set-top boxech (například pro IPTV), ačkoliv je pravdou, že Microsoft pro tento účel chystá a tlačí svůj WMV HD. Pokud chcete založit svůj podnikatelský záměr na set-top boxech, jiná cesta zatím není a dlouho nebude. Jenže u uživatelů Windows musíte počítat s tím, že budou muset kodek doinstalovat, a to není právě dobře. Ve Vistě bychom se s ním už měli potkat.

Pro H.264 můžete použít stejnou serverovou platformu jako pro QuickTime a existuje také řada nezávislých řešení různých cen a výkonností, zaměřených zejména na IPTV a distribuci videa on demand do set-top boxů. Z open source řešení stojí za to zmínit VLS.

RealVideo

Formát RealVideo (RV) pochází z dílny RealNetworks, také jednoho z dědečků internetového videa. Formát existuje už deset let a nyní se jeho přehrávač nachází v desáté verzi, to nám dává jednu verzi za rok. Původně vycházel z H.263, ale s postupným zastaráním tohoto kodeku přešla RealNetworks na proprietární kodeky RV30 a RV40, a to od verze 8. Kodeky RV10 a RV20 jsou ještě založeny na H.263 – nepleťte si je s označením přehrávače RealVidea.

Výhodou RealVideo formátu je především multiplatformnost – podporu má jak pro Windows, Mac a Linux, tak pro řadu dalších Unixů a vybaveny Symbianem jsou dokonce i přehrávače pro mobilní telefony Nokia a díky projektu Helix (viz dále) postupně i další.

Kromě toho jde opět o moderní a kvalitní formát, chybí mu ale jakákoliv standardizace, jde o uzavřené řešení, které v poslední době – zejména s úspěšným nástupem Flashe – neexpanduje tak rychle jako ostatní konkurenti.

Dobrým krokem k dalšímu šíření slávy RealVidea bylo uvolnění některých zdrojových kódů pro open-source komunitu. Tak vznikl projekt Helix, v rámci něhož se vyvíjí open-source přehrávač i server. Vzhledem k tomu, že kodeky RealVidea jsou proprietární a nebyly uvolněny, je to s podporou RV zejména na serveru slabší, ale s řadou dalších kodeků zde můžete velmi pohodlně pracovat a kompletně odbavovat videostreaming přes toto řešení – podporován je také H.264 a Ogg Theora.

Ogg Theora

Kodek Theora je kompletně svobodný videokodek tak, jak si ho představuje open-source hnutí. Je vlastně videoprotějškem zvukového kodeku Ogg Vorbis, který řeší podobnou svobodu oproti licencovanému MP3. Za kodekem Theora stojí uvolnění patentovaného kodeku VC3 společností On2 (ano, ta, co dodala kodek VC6 pro Flash). Vorbis se tak stává automaticky preferovaným audiokodekem k Theora kodeku v Ogg obálce filmu. O vývoj obou (a dalších) svobodných kodeků se stará Xiph.org.

Ačkoliv Theora patří do rodiny moderních videokodeků pro širokopásmové video, je spravedlivé říci, že její výsledky jsou slabší než u výše zmíněných kodeků. Důvod tkví především v neukončeném vývoji, červencová verze (2006) je stále ve fázi alfa vývoje a také do kodeku VC3 by bylo potřeba vnést další optimalizace.

Theora je díky svému open-source původu dostupná pro širokou řadu systémů, není ale na nich předinstalována a je nutné ji doinstalovat.

Existuje řada více či méně dobrých řešení pro streaming Theora videa, kromě Helixu je vhodné zmínit Fluemotion vydaný pod GPL licencí.

Proč tu není DivX a XviD?

Důvod je jednoduchý – v obou případech jde o starší kodeky, které mají výše uvedené nahradit. Navíc ve světě legálního obsahu nejsou tyto kodeky právě oblíbené a majitelé obsahu o nich neradi slyší. Není za nimi také žádné ucelené řešení pro streamování videa, hodí se spíše k jednorázovému pořízení a uložení filmu na disk, nikoliv na streaming po Internetu. Je ale třeba říci, že kvůli jejich popularitě mezi „hardcore“ uživateli Internetu jsou tyto kodeky stále přirozenou volbou na webech věnujících se „adult“ obsahu – ačkoliv i zde je začínají nahrazovat standardizované a výkonnější H.264.

Dalším problémem je, že těchto formátů se v USA zřejmě týkají některé software patenty a není jisté, jak to s nimi do budoucna bude. DivX je dnes proprietární kodek komerční firmy, navíc s nuceným přechodem od původního hacknutného Microsoft formátu ztratil dosti na kvalitě a nabalily se na něj skandály se spyware.

XviD je na tom lépe jako open-source řešení, i obrazovou kvalitou, ale ačkoliv by měly být oba kodeky zaměnitelné, uživatelé si často stěžují, že v některých DVD přehrávačích označených podporou DivX nelze přehrávat XviD filmy.

Kvůli tomu, že oba formáty jsou slabší, mají i nižší nároky na hardware a jejich dekódování je možné i v levných DVD přehrávačích, jsou přirozenou volbou u offline videa, kde o nějakou tu úsporu místa tolik nejde.

Pro nasazení u online videa je s nimi již lepší nepočítat, což ale neznamená, že bychom se s nimi nesetkávali. Pokud byste po nich toužili, můžete sáhnout třeba po VLS streameru.

Porovnání a výběr kodeků

Bylo to velmi kusé a stručné představení. Spíše bych řekl uvedení do problému a podnět pro vaše další výzkumy.

Velkým problémem je podpora a rozšíření. Standardizovanost H.264 je nádherná věc, ale nepřítomnost ve standardní instalaci Windows XP je zlá zpráva. Následující graf ukazuje, jaké je zastoupení jednotlivých pluginů v prohlížečích, mějme ale na paměti, že zprávu NPD si zaplatila Macromedia/Adobe pro dokumentaci rozšíření svého Flashe.

statistiky - kodeky

Porovnání kodeků a jejich optimální výběr je na Internetu předmětem plamenných diskusí a počítám s tím, že za svůj názor na DivX dostanu v diskusi také co proto, nehledě na to, že jsem si jej vytvořil po řadě vlastních zkoumání a poslechu názoru odborníků.

Na Internetu je k nalezení řada testů porovnávajících obrazovou kvalitu jednotlivých formátů a kodeků. Musíme pamatovat na to, že u kodeků existuje také řada implementací a výsledky se liší podle jednotlivých výrobců kodeků.

Dobré porovnání najdete na stránkách provozovaných ruským MSU Graphics & Media Lab  – je zajímavé si všimnout, že v nich exceluje free kodek x.264 a WMV v testech propadá. Tyto testy jsou ale přes rok staré a jejich opakování s větším počtem kodeků a technologií právě probíhá.

Dalším dobrým porovnáním mezi WMV a Flash videem je článek na flashcomguru.com.

Na obrázku je porovnání VP6 a WMV9 – najdete deset rozdílů v kvalitě?

Porovnání kodeku VP6 a WM9

Také v CESNETu se testovaly kodeky, jenže před třemi lety.

Častý názor také zmiňuje, že pro práci s každým konkrétním kodekem je rozhodující osobní zkušenost a cit člověka, který video kóduje. Profesionální implementace kodeků mají řadu nastavení a filtrů, které umožňují co nejlépe zakódování přizpůsobit konkrétnímu typu pořadu, snímku. A každý formát reaguje na tato nastavení jinak; testy porovnávají totožná nastavení a nedovolují využívat „fine tuning“.

Osobně se domnívám, že na tomto tvrzení je mnoho pravdy. Sám si pamatuji, že při mých prvních experimentech s kódováním videa jsem vytvářel podivně kostičkované a kostrbaté snímky, zatímco dnes mi vyjde dobře zakódované video. Nástroje používám ty stejné – jen je při jejich používání více zkušeností.

Lze tedy trochu zjednodušeně říci, že kromě Ogg Theora (který je v alfa stádiu vývoje) jsou kodeky pro širokopásmové video velmi vyrovnané a z hlediska obrazové kvality je vlastně jedno, jaký použijete.

Každý má své nevýhody.

Například u WMV musíte počítat s mírnou ztrátou jasu videa a případně ji zkusit kompenzovat. U Flashe si zase musíte být vědomi toho, že Flash se stává nestabilní při práci s větším blokem paměti, takže kodery pro Flash mají nastavování upozornění při překročení odhadu určité hranice využité paměti. To proto, aby uživateli přehrávané video nezatuhlo a Flash klient mu nezhavaroval. Aby vám to nebylo líto, tak s WMP si také užijete.

Ani H.264 není bez komplikací. Tou hlavní je jeho hardwarová náročnost – za svou kvalitu si vezme hodně výkonu procesoru a například při dekódování H.264 PAL kódovaného na rychlosti 1 Mbit/s si můj notebook s 1,5 GHz procesorem vyžádá zhruba 70 procent výkonu procesoru. Nelze se pak divit, že pro dekódování H.264 se vyrábějí akcelerátory, protože ještě koncem roku 2005 ATI uváděla, že rychlost procesorů není pro přehrávání HD videa kódovaného v H.264 dostatečná – dostatek výkonu zajistily až její čipy.

To ostatně konstatuje i zpráva CESNETu při zkoumání schopnosti produkovat HD video  – uživatel si jej nebude moci přehrávat bez dostatečného výkonu, nepodařilo se jej lokálně přehrávat ve formátu 1080 řádků na sestavě procesor 3 GHz, 512 MB DRAM, grafická karta se 128 MB RAM, rozlišení 1920×1440.

KL24

Asi jste už přišli na to, že článek vám nenabídne žádné konkrétní východisko. Pokud o internetovém videu přemýšlíte, zůstaňte u přemýšlení. Pokud ho chcete, vlétněte do toho rovnýma nohama, experimentujte, pátrejte a prošlapávejte cestičky, u nichž zatím není jasné, že se stanou slepými. Takový je osud pionýrů.

A douška na závěr: zaujalo vás internetové video jako technologie, chcete s ní pracovat, umíte s Javou nebo Flashem a chcete se přidat jako vývojáři k velkému projektu? Napište mi…

Vystavujete video na Internetu?

Byl pro vás článek přínosný?

Autor článku

Autor byl v letech 2008 – 2012 šéfredaktorem serveru Lupa.cz. Stál u zrodu řady projektů. Je spoluzakladatelem Energomonitoru, v CZ.NIC vedl projekt Turris. Je předsedou místní organizace Pirátské strany v Brandýse – Staré Boleslav.

Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).