Smart TV Alliance

19. srpen 2013

Organizace Smart TV Alliance (STA) byla založena v červnu 2012 společností LG Electronic a TP Vision (výrobce televizí Philips), krátce na to se přidala společnost Toshiba a na začátku letošního roku na konferenci CES 2013 v Las Vegas se k organizaci připojil Panasonic.

V Smart TV Alliance jsou tedy zastoupeni 4 z 6 největších výrobců chytrých televizí, počítáno podle počtu kusů televizí prodaných v Evropě.  Z velkých výrobců zůstává mimo alianci Sony, Samsung a Sharp. Členy aliance je také řada dalších společností podílejících se na vyvoji hardware a software (namátkou OperaTV, TechniSat nebo třeba VESTEL), přičemž připojení dalších členů bude oznámeno za několik dnů na veletrhu IFA 2013 v Berlíně (třeba se přidá i Samsung, který zdá se má veliké plány s operačním systémem Tizen…).

Cílem organizace je vytvořit jednotný systém pro vytváření televizních aplikací. Tento systém zahrnuje specifikaci aplikačního rozhraní, definici povinných a volitelných technologií, které musejí být výrobci televizí podporovány, vytváření SDK a emulátoru a jednotný systém schvalování aplikací. Pro rok 2013 je například jedním z cílů prosazování protokolu MPEG-DASH, pokračování ve standardizaci způsobu použití DRM a komunikace mezi multiscreen aplikacemi.

Smart TV Alliance chytře  přijala za svůj existují stav na trhu s televizemi a prosazuje jako standard pro vývoj aplikací HTML5, tedy nikoliv nativní vývoj, ani například NaCl (https://developers.google.com/native-client/), Flash nebo HTML-CE. Přestože jako vývojáři fragmentaci u chytrých televizí nevnímáme jako problém, každou podobnou snahu sjednotit a usnadnit vývoj vítáme jako krok, který přispěje k rychlejšímu rozvoji a šíření aplikací pro chytré televize. Pokud navíc Smart TV Alliance docílí stavu, kdy bude nutné testovat méně na cílovém hardware a dojde ke zjednodušení schvalovací procedury aplikací před umístěním do aplikačního obchodu, případně se k organizaci se připojí i někteří menší výrobci televizí a set-top boxů, pak jde o cíle, které určitě stojí za námahu. Důležitý je také fakt, že aliance nemá motivaci vytvářet nové standardy, ale z existujících si vybírá ty, na jejich využití se výrobci sdružení v alianci dohodnou a jejichž podporu následně v chytrých televizích implementují.

Specifikace

Aliance vydává pravidelně specifikace popisující standardy, které musejí být výrobci chytrých televizí podporovány. Aktuálně je specifikace ve verzi 2.5 a v krátké době má být představené také SDK 2.5, v lednu příštího roku pak SDK 3.0. Specifikace definuje, které části ze specifikací HTML5, CSS3, W3C DOM levelů a XMLHTTPRequest musejí být podporovány, dále pak například jaké je rozlišení aplikací, podpora obrazových formátů, vestavěných fontů, apod.

Pro potřeby OTT asi nejvíce oceňujeme definovanou podporu v oblasti streamování videa, použitých  kontejnerů, kodeků a DRM. Smart TV Alliance vyžaduje podporu pro:

  1. Range http hlavičky, použitelné pro seek při progressive downloadu
  2. HLSv4 (http://tools.ietf.org/html/draft-pantos-http-live-streaming-04)
  3. SmoothStreaming
  4. MPEG DASH
  5. MP4 a MPEG-TS kontejnery
  6. H.264/AVC, HE-AAC, MP3
  7. PlayReady (podpora Widevine není povinná)

Specifikace na druhou stranu zatím nijak neřeší například použití titulků a jejich formát (zde se pouze odkazuje na externí knihovnu), automatické přepínání zobrazení u 3D titulů nebo takové věci jako je podpora trickplay.

Vzhledem k nemožnosti instalace dodatečných root certifikátů oceňujeme jejich přesně definovaný seznam převzatý z HbbTV: www.hbbtv.org/spec/certificates.html (Více o této problematice si můžete přečíst zde http://www.mautilus.com/troubles-with-https-on-smart-tvs/.).

Nová specifikace 2.5 (zatím bez SDK) rozšiřuje podporu stávajících standardů a přichází konečně s jednotnou hodnotou pro hlavičku User-Agent, což je drobnost, která ale potěší každého dodavatele aplikačního serveru. Především však nová verze specifikace rozšiřuje možnosti televizí v oblasti multiscreenu povinnou podporou protokolu DIAL (DIscovery And Launch) vyvinutého společností Netflix. DIAL umožňuje spuštění aplikace na televizi z prostředí second screen aplikace (většinou tedy z telefonu nebo tabletu), k čemuž využívá protokol SSDP a jednoduchou službu DIAL implementovanou jako REST http. Specifikace 2.5 dále definuje nepovinnou podporu frameworku AllJoyn pro peer2peer komunikaci mezi zařízeními na lokální síti a přidává také stručné doporučení jak využít Web Sockety a cloudový server ke komunikaci mezi second screen aplikací a televizí.

SDK

SDK Vám nainstaluje kopii Eclipse a VirtualBox s obrazem aktuálního prohlížeče pro spouštění aplikací. Jako u všech ostatních vývojových prostředí, které simulují reálný hardware, ani u Smart TV Alliance nefunguje streamování videa. Problémem simulace je také rychlost aplikace, která se na cílové televizi bude hodně lišit, proto se testování “na železe” stejně nevyhnete. Simulace prostředí televize je poměrně jednoduchá, na úvodní obrazovce je rozcestník pro aplikace, po jejichž spuštění se ve spodní části nacházejí tlačítka dálkového ovládání. Aplikaci spuštěnou ve virtuálním stroji je možné debugovat, Eclipse umí zachytávat odeslané logy. Prostředí je dobré na odzkoušení, zda aplikace nepoužívá některé nepodporované funkce, ale kdo používá pro vývoj Chrome zřejmě emulátoru na chuť nepřijde…

Podpora zařízení a schvalování aplikace (QA)

Smart TV Alliance dosud nezveřejnila seznam televizí nebo televizních řad jednotlivých výrobců, které podporují specifikaci 2.0. Podle informací, které máme se tak má stát v „nejbližší době“. Zdá se, že jedna věc je být součástí aliance a druhá připravit kompatibilitu stávajících zařízení, otestovat streamování, zaručit podporu DRM, upgradovat firmware, apod. Náš odhad kompatibility zahrnuje televize Philips NetTV 4.1+, LG NC4+ a Panasonic SmartViera 2013, nicméně zatím se na to nespoléháme a při vývoji se tímto příliš neřídíme – prozatím k tomu není důvod protože většinou musíme v aplikacích podporovat i starší zařízení.

Zajímavé jsou v této souvislosti plány LG nahradit v roce 2014 na chytrých televizích stávající platformu NetCast systémem WebOS. Co je nejdůležitější, vše má být 100% kompatibilní se Smart TV Alliance specifikací.

Jako dobrý nápad se nám jeví jednotná schvalovací procedura.

  1. Na začátku je nutné aplikaci zaregistrovat (registrace zatím probíhá přes email). Podobně jako u registrací  u jednotlivých výrobců televizí je vyžadováno URL odkazující se na hostovanou aplikaci, název aplikace, ikona, povolení IP adres testerů a dokument popisující fungování aplikace (podobný vyžaduje například LG nebo Samsung).
  2. Nejprve aplikaci chválí STA QA
  3. Následně odešle aplikaci jednotlivým výrobcům k jejich posouzení
  4. Každý výrobce se k aplikaci a jejím jednotlivým aspektům vyjádří
  5. STA sesbírá informací od výrobců a vytvoří vytvoří zprávu, kterou odešle zpět vývojářům aplikace. V budoucnu bude zřejmě celý proces probíhat on-line prostřednictvím webových stránek, zatím je vše řešeno mailovou komunikací.
  6. Po schválení aplikace je její publikace, doprovodné marketingové texty, screenshoty a další informace nutné nahrát zvlášť prostřednictvím webových stránek jednotlivých výrobců.
  7. Těšíme se, až bude celý proces probíhat on-line. 

SmartTV Allianci přejeme hodně štěstí!

Přihlašte se k odběru novinek