JavaScript dokáže emulovat Flash Player

Petr Krčmář 4. 6. 2010

Milovaný i nenáviděný, používaný i zakazovaný, opěvovaný i proklínaný. Takový je Flash Player. Technicky velmi problematický modul do prohlížečů je ale velmi užitečný pro vývojáře složitých webových aplikací. Objevují se řešení problémů s Flashem – emulátory napsané v JavaScriptu. Co vlastně dokáží?

Velcí hráči nechtějí Flash

Flash je tu s námi už mnoho let, je nainstalován na drtivé většině počítačů a obvykle funguje a plní svou funkci velmi dobře. Přesto je to často spíše trpěný kus software, který svým uživatelům přináší nemalé problémy. Pověstný je svou náročností na procesorový čas a také častými pády, se kterými téměř vždy stáhne i samotný prohlížeč. Podle statistiky, kterou před několika lety vydala Mozilla, může právě Flash za většinu pádů prohlížeče Firefox.

V poslední době se navíc k odporu proti Flashi postavili i velcí hráči v čele s firmou Apple. Ta ve svých populárních zařízeních iPhone a iPad odmítá Flash implementovat nebo jeho instalaci povolit. Přestože se Adobe snaží dostat Flash i na mobilní zařízení, Apple stále odmítá a poukazuje na přílišnou náročnost takového řešení, která se na mobilních přístrojích podepíše především na výdrži. Problém s výkonem naznačují i první testy mobilního Flashe. Uživatelé ale hlásí, že například na Nokii N900 s procesorem na 600 MHz se chová Flash velmi dobře.

Dalším velkým odpůrcem Flashe, alespoň pro přehrávání webového videa, je firma Google. Ta nedávno otevřela video formát VP8 a na YouTube už začal převádět videa do nového formátu. Většina prohlížečů už teď tento nový formát podporuje a vy si jej můžete na YouTube vyzkoušet.

Zajímavé je, že firmy Apple společně s Googlem mají dost velkou sílu na to, aby minimálně výrazně rozvířily vodu a způsobily větší webové vlnobití. Google nechce Flash pro přehrávání videa a Apple ho nechce vůbec. Uživatelé ale stále chtějí svůj obsah i na mobilních zařízeních. Cesta ven tedy vede jediným směrem – alternativním řešením. Zatímco Google už to své připravil, hledání toho pro ostatní Flash prvky nás teprve čeká.

Kudy tudy do Bezflashova

Google chce Flash nahradit pomocí nativních funkcí prohlížeče a využívá k tomu tag <video> a také ostatní podobné snahy vedou skrze jádro prohlížeče očištěné od všemožných přídavků. Podle mnohých mají moderní prohlížeče dostatečné schopnosti na to, aby nebyl Flash potřeba.

Flash je nástroj, který pomocí příkazů pro virtuální grafický engine dokáže pracovat s vektorovou grafikou. V tomto směru by tedy mohl být teoreticky nahrazen JavaScriptem a vektorovým formátem SVG. Už delší dobu můžeme díky těmto technologiím hrát na webu třeba šachy nebo hru Wolfenstein. Proč to tedy nezkusit na Flash.

Prvním viditelnějším projektem pokoušejícím se nahradit Flash pomocí JS a SVG je Gordon, jehož autorem je Tobias Schneider. Na domovské stránce projektu si můžete prohlédnout několik jednoduchých demonstračních ukázek. Můžete si je i přímo porovnat s originálními animacemi. Výsledek je překvapivě dobrý a implementace je z hlediska uživatele také velmi prostá:

<head>
    <script type="text/javascript" src="../gordon.js"></script>
  </head>
  <body onload="new Gordon.Movie('blue.swf', {id: 'stage', width: 500, height: 400})">
    <div id="stage"></div>
  </body>

Výsledek funguje ve Firefoxu, Chrome i Safari včetně toho v iPhone. Bohužel zatím umí jen SWF verze 1, i když zvládá některé funkce z verzí vyšších. Aktuální je ovšem verze 10. Zatím je tedy Gordon použitelný jen pro opravdu jednoduché věci, což je patrné i z demonstračních ukázek. Autor ale tvrdí, že pracuje na podpoře SWF 2 a časem se dostane ještě dál. Uvidíme.

Novějším a nadějnějším projektem je Smokescreen. Jeho autorem je společnost RevShock a zatím o něm není příliš mnoho známo. Podle prvních informací se bude jednat o open-source nástroj pro přímou konverzi SWF do JavaScriptu. Opět jsou k dispozici demonstrační ukázky, které ale vypadají velmi slibně. Sada podporovaných prohlížečů je stejná: Firefox, Chrome, Safari a mobilní Safari.

Smokescreen zatím není k dispozici, i když firma tvrdí, že brzy bude. Je primárně určen pro převod flashové reklamy. Ta je samozřejmě tahounem podobných snah, protože zadavatelé reklamy by rádi viděli své vizuálně zajímavé bannery i na stále se šířících iZařízeních.

widgety

Je to opravdu Flash v JavaScriptu?

Úspěch takového řešení závisí především na výkonu moderních webových prohlížečů. Přestože se výrobci stále snaží jej vylepšovat a za poslední dva roky došlo k výraznému pokroku, pravděpodobně nikdy nedosáhne javascriptová implementace Flashe nativního výkonu. O porovnání výkonů si můžete přečíst v našem velkém testu osmi prohlížečů.

Anketa

Chtěli byste Flash nahradit JavaScriptem?

Podobné projekty tak zřejmě přinesou dva významné nové prvky: jednak se samozřejmě objeví nová, barevnější a veselejší reklama na mobilních zařízeních, ale vývojáři také budou moci pro tvorbu webů použít moderní nástroje určené pro přípravu flashových animací. Ty z hlediska práce s grafikou dosáhly vysoké kvality a v budoucnu bude zřejmě možné je využít pro přípravu líbivé a pokročilé grafiky bez nutnosti instalovat do klientských prohlížečů podpůrné moduly. Kdy se asi objeví rozšíření pro blokování reklamy v nových formátech?

Našli jste v článku chybu?
DigiZone.cz: Ultra HD v praxi a v Portugalsku

Ultra HD v praxi a v Portugalsku

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

120na80.cz: Co je padesátkrát sladší než cukr?

Co je padesátkrát sladší než cukr?

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

Vitalia.cz: Tesco nabízí desítky tun jídla zdarma

Tesco nabízí desítky tun jídla zdarma

Vitalia.cz: 5 chyb, které děláme při skladování potravin

5 chyb, které děláme při skladování potravin

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

Lupa.cz: Cimrman má hry na YouTube i vlastní doodle

Cimrman má hry na YouTube i vlastní doodle

DigiZone.cz: Digi Slovakia zařazuje stanice SPI

Digi Slovakia zařazuje stanice SPI

Podnikatel.cz: Nemá dluhy? Zjistíte to na poště

Nemá dluhy? Zjistíte to na poště

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

DigiZone.cz: Světový pohár v přímém přenosu na ČT

Světový pohár v přímém přenosu na ČT

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Podnikatel.cz: ČSSZ posílá přehled o důchodovém kontě

ČSSZ posílá přehled o důchodovém kontě

DigiZone.cz: Technisat připravuje trojici DAB

Technisat připravuje trojici DAB

Vitalia.cz: Jsou vegani a vyrábějí nemléko

Jsou vegani a vyrábějí nemléko

Podnikatel.cz: Tyto pojmy k #EET byste měli znát

Tyto pojmy k #EET byste měli znát

DigiZone.cz: Wimbledon na Nova Sport až do 2019

Wimbledon na Nova Sport až do 2019