Rich Media en de techniek Hoe kunnen Rich Media gebruik maken van verrijkende technieken als SMIL, HTML5, Flash en Silverlight?
Versie: 1.1 Datum: dinsdag 03 november 2009 Pieter Bayens / Ronald de Groot SURFnet/Kennisnet Innovatieprogramma
Het SURFnet/ Kennisnet Innovatieprogramma wordt financieel mogelijk gemaakt door het Ministerie van Onderwijs, Cultuur en Wetenschap.
Voor deze publicatie geldt de Creative Commons Licentie “Attribution 3.0 Unported”. Meer informatie over deze licentie is te vinden op http://creativecommons.org/licenses/by/3.0/
Inhoudsopgave 1. Inleiding ............................................................................................................................................... 3 2. Onderzoeksvraag en afbakening ........................................................................................................ 4 2.1 Hoofdvraag.................................................................................................................................... 4 2.2 Deelvragen.................................................................................................................................... 4 2.3 Afbakening .................................................................................................................................... 4 Heden en toekomst, geen verleden ................................................................................................ 4 Leesbaar voor een breed publiek met basale ICT kennis .............................................................. 4 Alleen breder ondersteunde producten, methoden en technieken ................................................. 4 2.4 Definities........................................................................................................................................ 4 Rich Media ...................................................................................................................................... 4 Rich Media formaten ....................................................................................................................... 5 Mobiel platform................................................................................................................................ 5 3. Welke formaten voor het verrijken en combineren van audio, video, afbeeldingen en tekst zijn er op de markt? ................................................................................................................................................ 6 3.1 SMIL .............................................................................................................................................. 6 3.2 Adobe Flash .................................................................................................................................. 6 3.3 Adobe Shockwave ........................................................................................................................ 6 3.4 Microsoft Silverlight ....................................................................................................................... 6 3.5 HTML5........................................................................................................................................... 7 4. Wat zijn de specifieke kenmerken van de formaten? ......................................................................... 8 4.1 Toepassingsgebieden ................................................................................................................... 8 4.1.1 SMIL ....................................................................................................................................... 8 4.1.2 Flash....................................................................................................................................... 8 4.1.3 Shockwave............................................................................................................................. 9 4.1.4 Silverlight................................................................................................................................ 9 4.1.5 HTML5.................................................................................................................................... 9 4.2.1 Besturingssystemen............................................................................................................. 11 4.2.2 Browsers .............................................................................................................................. 11 4.2.3 Buiten de browser ................................................................................................................ 12 4.3.4 Ontwikkeling en implementatie ............................................................................................ 12 4.3 Ontwikkeling in de verschillende formaten.................................................................................. 13 5. Welke formaten worden reeds ondersteund en welke formaten zijn in ontwikkeling? ..................... 14 5.1 SMIL ............................................................................................................................................ 14
5.2 Flash............................................................................................................................................ 14 5.3 Shockwave .................................................................................................................................. 15 5.4 Silverlight..................................................................................................................................... 15 5.5 HTML5......................................................................................................................................... 15 6. Welke van deze formaten zijn geschikt voor het gebruik op mobiele platformen?........................... 17 6.1 SMIL ............................................................................................................................................ 17 6.2 Flash............................................................................................................................................ 17 6.3 Shockwave .................................................................................................................................. 17 6.4 Silverlight..................................................................................................................................... 17 6.5 HTML5......................................................................................................................................... 18 7. Hoe zijn deze formaten toe te passen voor Rich Media? ................................................................. 19 7.1 Augmented Reality - Museumwereld .......................................................................................... 19 7.2 Kennisdeling tussen studenten ................................................................................................... 19 7.3 Koppelen van weblectures aan slides en externe informatiebronnen ........................................ 19 8. Conclusie .......................................................................................................................................... 21
2
1. Inleiding SURFnet en Kennisnet hebben in de afgelopen periode in samenwerking met technisch partner Madcap gewerkt aan de ontwikkeling van het VP-Core platform. VP-Core (ookwel MediaMosa) is een web georiënteerd Media Management en distributie platform. VP-Core wordt door SURFnet ingezet voor het uploaden, streamen, transcoderen, metadateren, beheren en zoeken van videomateriaal en wordt gebruikt voor het plaatsen van content op SURFmedia. SURFnet zou het platform graag op korte termijn willen uitbreiden met mogelijkheden tot integreren van Rich Media. Rich Media bestaan uit gecombineerd gebruik van Video, Audio en presentatie slides. Hiermee wordt het mogelijk om hoorcolleges of seminars via het systeem aan te bieden. In het kader van het SURFnet/Kennisnet-innovatieprogramma is onderzocht in hoeverre het mogelijk is van verschillende verrijkende web-technieken gebruik te maken, zoals Flash, HTML5 en SMIL. Het onderzoek richtte zich op het in kaart brengen van de verschillende technieken en hun mogelijkheden. In dit rapport worden de resultaten beschreven. Allereerst is onderzocht welke technieken er op de markt zijn voor het verrijken en combineren van audio, video, afbeeldingen en tekst. Vervolgens is gekeken naar de specifieke kenmerken van deze formaten: hoe zijn ze ontstaan, wat is het gedachtegoed achter de ontwikkeling en waarvoor worden ze ingezet. Daaruit vloeit de vraag voort hoe het met de ontwikkeling van de verschillende technieken staat. Zijn ze al bruikbaar? Hoe is de eventuele ondersteuning van de verschillende browsers of besturingssystemen? Zijn er belangrijke aankondigingen gedaan over toekomstige functionaliteit? De antwoorden op deze vragen moeten inzicht geven in de status en bruikbaarheid van de technieken voor de toepassing van Rich Media. Een andere vraag die beantwoord wordt is of en hoe de technieken geschikt zijn voor het gebruik op mobiele platformen. We beperken ons hierbij tot hedendaagse high-end smartphones. Als laatst worden enkele praktische toepassingsmogelijkheden van Rich Media uiteen gezet op basis van bovengenoemde technieken.
3
2. Onderzoeksvraag en afbakening 2.1 Hoofdvraag De hoofdvraag van het onderzoek luidt als volgt: "Hoe kunnen Rich Media gebruik maken van verrijkende technieken als SMIL, HTML5, Flash en Silverlight?" 2.2 Deelvragen Zoals in de inleiding al kort is aangegeven, valt de hoofdvraag in feite uiteen in enkele deelvragen. Deze zijn als volgt:
Welke formaten voor het verrijken en combineren van audio, video, afbeeldingen en tekst zijn er op de markt? Wat zijn de specifieke kenmerken van de formaten? Welke formaten worden reeds ondersteund en welke formaten zijn in ontwikkeling? Welke van deze formaten zijn geschikt voor het gebruik op mobiele platformen? Hoe zijn deze formaten toe te passen voor Rich Media?
2.3 Afbakening Om de vragen te beantwoorden en de context van het onderzoek af te bakenen, zijn vooraf randvoorwaarden opgesteld. Heden en toekomst, geen verleden Hoewel de ontwikkeling van Rich Media technieken in het verleden interessant is, kijkt dit onderzoek alleen naar de huidige en toekomstige platformen. Dat wil zeggen dat er geen rekening wordt gehouden met de oudere versies of standaarden bij de praktische toepassingen van Rich Media. Leesbaar voor een breed publiek met basale ICT kennis Het onderzoek richt zich op verschillende doelgroepen. Allereerst intern bij SURFnet en Kennisnet. Daarnaast voor instellingen als hogescholen en universiteiten en andere geïnteresseerden. De schrijfstijl is zoveel mogelijk niet-technisch van aard. Om tot de kern van enkele vragen te komen, is het echter onmogelijk om technische termen volledig te vermijden. Waar nodig worden deze verduidelijkt worden in een begrippenlijst. Alleen breder ondersteunde producten, methoden en technieken In het onderzoek wordt niet gezocht naar producten, methoden of technieken die zich in een niche van de markt bevinden. Dat wil zeggen dat bijvoorbeeld technieken specifiek voor Apples Mac's niet meegenomen zullen worden, omdat het dan voor slechts 5% van de eindgebruikers bruikbaar zou zijn. 2.4 Definities Rich Media Audio, video en ander digitaal (presentatie)materiaal dat met elkaar gecombineerd wordt en gesynchroniseerd afgespeeld kan worden.
4
Rich Media formaten Bestandsformaten waarin Rich Media aangeboden wordt. Denk hierbij aan Flash, HTML5 of SMIL. Verrijkende (web-)technieken Zie Rich Media formaten. Rich Internet Applicatie Een Rich Internet Application (ook afgekort tot RIA) is een term die gebruikt wordt voor interactieve internetapplicaties, die het gevoel geven van een desktopprogramma (bijvoorbeeld een tekstverwerker of een agenda). Rich Internet Applications geven de gebruiker, zonder dat een andere pagina wordt geopend, respons op de ingevoerde gegevens.1 Mobiel platform Zoals een computer een besturingssysteem heeft zoals Microsoft Windows, Apple Mac OS of Linux, heeft een smartphone ook een besturingssysteem. Met 'mobiel platform' wordt dan ook bedoeld het besturingssysteem van de smartphone.
1
Bron: Wikipedia.org
5
3. Welke formaten voor het verrijken en combineren van audio, video, afbeeldingen en tekst zijn er op de markt? 3.1 SMIL SMIL is een taal om gemakkelijk verschillende bronnen zoals filmpjes, tekst en geluidsfragmenten in een tijdslijn af te spelen. Hierdoor wordt het mogelijk om zonder diepgaande technische kennis van audio-/videobewerkingsprogramma's bijvoorbeeld presentaties (on-line) te maken. SMIL kent verschillende 'vormen'. SMIL is van origine bedacht om in een aparte mediaspeler, zoals bijvoorbeeld Apple Quicktime of Microsoft Windows Media Player, afgespeeld te worden. Later zag Microsoft echter in dat de meerwaarde van SMIL voornamelijk op het web bestond. Microsoft noemt het in hun implementatie in Internet Explorer HTML+TIME. Dit is specifiek gericht op de toepassing van SMIL binnen een web browser. In dit onderzoek zullen we de term SMIL aanhouden als aanduiding van de verschillende implementaties. 3.2 Adobe Flash Adobe Flash, voorheen Macromedia Flash en FutureSplash, is een techniek om verschillende soorten media weer te geven op de computer. Je kunt er van simpele statische plaatjes tot hele websites of web applicaties mee maken. Een populaire toepassing van Flash is de videospeler. Sites als YouTube maken gebruik van Flash om hun video's weer te geven en van interactiviteit te voorzien. Daarnaast wordt Flash veel toegepast om bijvoorbeeld geanimeerde 'banners' op het web weer te geven. Het gebruik van Flash voor Rich Media is zeer voor de hand liggend, omdat het tegenwoordig wordt ondersteund door de programmeertaal ActionScript,. Hiermee zijn veel mogelijkheden voor interactive content in Flash geopend. 3.3 Adobe Shockwave Over Shockwave, tegenwoordig ook onderdeel van Adobe, bestaat redelijk wat verwarring. Shockwave en Flash overlapen elkaar namelijk voor een groot deel. Toch zijn er significante verschillen, vooral op het technische vlak. Hoewel er weinig toepassingen zijn die met Flash wel mogelijk zijn en in Shockwave niet, en vice versa, is Shockwave enorm veel sterker in grafische toepassingen. Het wordt daarom ook vaak voor het maken van online games gebruikt. Eén van de andere belangrijke verschillen is dat Shockwave uitsluitend gemaakt kan worden in Adobe Director, terwijl Flash bestanden in meerdere tools kunnen worden gemaakt. De toepassing van Shockwave voor Rich Media zou moeten worden gezocht in bijvoorbeeld games of virtuele omgevingen. 3.4 Microsoft Silverlight Silverlight brengt in de meest recente versie, 3.0, het beste aan functionaliteiten van Shockwave en Flash bij elkaar in één product. Het biedt de relatieve eenvoud van Flash, gecombineerd met de kracht en visuele mogelijkheden van Shockwave. Silverlight biedt vele mogelijkheden voor het maken van zogenaamde RIA's, Rich Internet Applications. De onderliggende programmeertaal is namelijk niet één, maar elke mogelijke '.NET' taal van Microsoft. Hierdoor is het eenvoudig bestaande applicaties om te bouwen naar Silverlight en eventueel zelfs te integreren in Windows. Silverlight kan namelijk zowel binnen een browser als 'stand-alone' draaien.
6
3.5 HTML5 HTML is 'de taal van het internet'. HTML is ontworpen om webpagina's te maken. In de nieuwste versie, HTML5, is veel basale, maar zeer nuttige functionaliteit uit Flash en Silverlight overgenomen. HTML5 zal straks standaard door elke browser ondersteund worden. Bij Flash en Silverlight is altijd een aparte plug-in nodig voor de browser. Daarnaast zal het maken van een animatie in HTML5
eenvoudiger zijn dan in Flash of Silverlight. Je hebt er overigens geen speciale software voor nodig: een programma als Notepad (Kladblok) is genoeg om je eerste stappen op het animatiegebied te zetten. HTML5 is nog niet af en constant in ontwikkeling tot er een definitieve 'standaard' is. Sommige browsers ondersteunen echter al wel delen van de HTML5-specificatie.
7
4. Wat zijn de specifieke kenmerken van de formaten? De specifieke kenmerken van de verschillende technieken worden in dit hoofdstuk in kaart gebracht om te kijken welk formaat het meest geschikt is voor de toepassing van specifieke Rich Mediavormen. 4.1 Toepassingsgebieden Allereerst is onderzocht wat de toepassingsgebieden van de verschillende formaten zijn. We kunnen in feite drie verschillende toepassingen onderscheiden: games, audio/video en Rich Internet Applications. De laatste zijn in feite complete applicaties zoals een tekstverwerker of videobewerking. Bij de beoordeling hiervan is rekening gehouden met de technische mogelijkheden van de verschillende technieken.
Grafische Games Audio/Video‐Mashups RIA's
SMIL Nee Ja Nee
Flash Licht Ja Ja
Shockwave Ja Complex Complex
Silverlight Ja Ja Ja
HTML5 Nee Ja, in toekomst Ja
4.1.1 SMIL SMIL is niet geschikt voor grafische games. Het is een techniek om audio, video en tekst in een tijdslijn te zetten. Geavanceerde interactiviteit, zoals voor games vereist is, is echter niet mogelijk. Voor audio/video toepassingen is SMIL bij uitstek geschikt. Het is mogelijk verschillende media in een tijdslijn weer te geven, waardoor je uit verschillende bronnen informatie tegelijk weer kan geven. Je zou SMIL kunnen zien als PowerPoint voor het internet. RIA's zijn met SMIL niet mogelijk. Het biedt geen mogelijkheden tot het bewerken of transformeren van media en is eigenlijk niets meer dan een statische presentatie van (verschillende) media. 4.1.2 Flash Grafische games kunnen gemaakt worden via Flash, zo lang ze niet te complex zijn. Flash heeft bijvoorbeeld geen toegang tot de videokaart van de computer, waardoor er geen geavanceerde grafische effecten mogelijk zijn, zoals bij 3D-games. 2D-games zijn over het algemeen wel mogelijk. Voor audio/video-mashups is Flash zeer zeker geschikt. Hoewel het 'programmeren' van een Flash applicatie iets complexer is dan een SMIL-toepassing is Flash meer geschikt om ook extra interactiviteit toe te voegen. Niet voor niets is Flash, door zijn functionaliteit en platformonafhankelijkheid, de meest gebruikte techniek om via het internet audio/videomateriaal aan te bieden. Ook voor RIA's is Flash geschikt. Adobe biedt met het 'FLEX' en 'AIR' platform vele tools om applicaties zelfs buiten de browser te laten draaien en te communiceren met externe bronnen.
8
Daarnaast is het feit dat Flash min of meer platform-onafhankelijk is (het kan op bijna elk besturingssysteem draaien) een goed argument om deze techniek in te zetten voor RIA's.
4.1.3 Shockwave Shockwave lijkt qua resultaat vaak erg op Flash, maar biedt enkele krachtigere tools op het gebied van grafische toepassingen. Het heeft namelijk toegang tot de grafische kaart van de computer, waardoor 3D-toepassingen mogelijk worden. Denk hierbij dus aan games of virtuele omgevingen. Het verschil met Flash is misschien wel het beste uit te drukken middels een analogie. Neem Duplo, de bouwblokjes voor peuters en kleuters. De blokken zijn vrij groot en je kunt in korte tijd een leuk huisje bouwen. Shockwave is dan technisch lego: af en toe een stuk ingewikkelder, maar het biedt uiteindelijk meer mogelijkheden tot verfijning van de interface. Daarnaast is het meer werk om met Lego het zelfde simpele huisje te maken dan met Duplo. Voor simpele audio/video toepassingen is Shockwave dan ook minder geschikt, simpelweg omdat je met een alternatief als Flash eenvoudiger hetzelfde resultaat kunt bereiken. Pas wanneer er meer complexiteit mee gaat spelen zoals in Augmented Reality2 toepassingen kan Shockwave een beter alternatief zijn. Voor RIA's is het ook geschikt, hoewel ook hier geldt dat het pas bij complexere (3D-)toepassingen loont om Shockwave te gebruiken.3 4.1.4 Silverlight Silverlight is Microsofts antwoord op Flash en Shockwave. Dit formaat combineert de krachten van Shockwave op 3D-gebied en complexe applicaties met de relatieve eenvoud en veelzijdigheid van Flash. Eén van de speerpunten van Silverlight is dat het ontwikkelen van Silverlight-toepassingen in vele programmeertalen kan. Daardoor is ook het omzetten van bestaande (desktop)toepassingen naar bijvoorbeeld RIA's relatief eenvoudig. Silverlight is geschikt voor eigenlijk alle soorten Rich Media-toepassingen, van games tot RIA's. Veel streamingdiensten maken tegenwoordig gebruik van Silverlight, mede doordat het goede Digital Right Management (DRM) mogelijkheden biedt voor audio/video-materiaal. 4.1.5 HTML5 HTML5 is de opvolger van XHTML1 en HTML4. Het is in feite een taal om websites mee te bouwen. De nieuwste versie, die overigens nog in ontwikkeling is, heeft nieuwe technieken om eenvoudige audio/video-toepassingen mogelijk te maken zonder plug-ins van externe leveranciers. De standaard is nog volop in ontwikkeling en één van de punten waarop op dit moment nog veel onduidelijkheid is is welke 'codecs' welke ondersteund zullen worden. De verschillende browserfabrikanten kunnen het nog niet eens worden over de codecs die in HTML5-standaard worden ondersteund. Dit punt staat
2
"Augmented reality is een vakgebied dat zich hoofdzakelijk bezighoudt met het zo realistisch mogelijk toevoegen van computergemaakte beelden aan rechtstreekse, reële beelden. In plaats van informatie af te beelden op klassieke en geïsoleerde beeldschermen, worden de data geprojecteerd in het gezichtsveld van de gebruiker, meestal door middel van een head-mounted display of head-up display. Het maakt het verschil tussen de reële wereld en de virtuele wereld steeds kleiner en zorgt tevens voor eenvoudigere en gebruikersvriendelijkere interfaces, ook voor complexere toepassingen." (Bron: Wikipedia.org) 3 http://www.adobe.com/products/director/resources/integration/flash/quick_comparison.html
9
nog ter discussie. In december 2009 zal het World Wide Web Consortium (W3C) opnieuw proberen tot een overeenkomst te komen voor de HTML5 standaard.4 De ontwikkeling van (3D-)games met HTML5 lijkt vooralsnog niet mogelijk, hoewel het wel goede interface elementen bevat, zoals 'Drag & Drop'-functionaliteit. Daarnaast biedt HTML5 standaard
ondersteuning voor off-line werken in on-line (web)applicaties. Daardoor zou je bijvoorbeeld zonder internet toch in je webmail kunnen om e-mails op te stellen, waarna deze verzonden worden als de computer weer verbonden is met internet. HTML5 heeft dan ook vooral waardevolle toevoegingen voor RIA's.
4
http://www.w3.org/html/wg/tracker/issues/7
10
4.2 Platformen Voor de ondersteuning en toepassing van de formaten zijn sommigen gelimiteerd tot bepaalde besturingssystemen en/of browsers. 4.2.1 Besturingssystemen
Microsoft Windows XP/Vista Apple Mac OSX Linux * **
SMIL Ja Ja Ja
Flash Ja Ja Ja
Shockwave Ja Ja Nee
Silverlight Ja Ja Deels **
HTML5 Ja * Ja * Ja *
Ondersteuning is afhankelijk van browsers. Besturingssysteem biedt in principe de mogelijkheid tot implementatie. Er bestaat een port van Silverlight voor Linux, Moonlight. De huidige versie biedt ondersteuning voor Silverlight 2.0 en delen van Silverlight 3.0. 5
4.2.2 Browsers Enkele formaten draaien binnen of juist buiten een browser. Onderstaande tabel geeft weer in welke browsers de formaten afgespeeld kunnen worden en of ze ook buiten de browser kunnen draaien. Naast deze browsers zijn er nog andere browsers, met deze browsers wordt bijna 99% van de markt afgedekt volgens Net Applications6.
Internet Explorer Firefox Safari Chrome Opera Buiten browser * **
SMIL Ja Nee Ja Nee Ja Ja *
Flash Ja Ja Ja Ja Ja Ja
Shockwave Silverlight HTML5 Ja Ja Ja ** Ja Ja Ja ** Ja Ja Ja ** Ja Ja Ja ** Ja Ja Ja ** Ja Ja Nee
Met media spelers als QuickTime of Windows Media Player De HTML5 standaard is nog niet compleet. De standaarden zijn dus ook nog niet volledig geimplementeerd in browsers.
Kanttekening hierbij is dat voor de formaten Flash, Shockwave en Silverlight een aparte plug-in geïnstalleerd dient te worden. Flash heeft hierbij veruit de grootste 'installed user base', van 96% van alle browserinstallaties7. Silverlight zit op het moment rond de 30%, maar klimt gestaag (een groei
5
http://www.adobe.com/products/player_census/shockwaveplayer/ http://marketshare.hitslink.com/browser-marketshare.aspx?qprid=0&qpmr=100&qpdt=1&qpct=3&qptimeframe=M&qpsp=127&qpnp=2 7 Adobe zelf meldt 99% voor desktop systemen in zijn geheel, waarbij er dus som twee browsers zijn geïnstalleerd waarbij de ene wel en de andere geen Flash ondersteuninig heeft. 6
11
van 33% in het eerste half jaar van 2009)8. Shockwave is geïnstalleerd op zo'n 57% van de computers wereldwijd die met het internet verbonden zijn9.
4.2.3 Buiten de browser Eén van de grote voordelen van Flash, Shockwave en Silverlight voor Rich Media-applicaties is dat ze ook buiten de browser gedraaid kunnen worden. Dit zorgt ervoor dat je een applicatie ter download aan zou kunnen bieden of op bijvoorbeeld een CD of USB-stick. Vele toekomstige applicaties zullen zwaar op het internet leunen, zoals op afstand samen aan documenten werken, games, e-books, real-time informatiesystemen, etc. Deze applicaties worden 'Rich Internet Applications' (RIA) genoemd. Adobe heeft met het AIR platform, wat een combinatie is van Flash en HTML/AJAX, de pijlen gericht op het maken van RIA's. Silverlight is net als Adobe AIR erg gericht op RIA's. De voordelen zijn direct ook de nadelen: doordat het met een 'player' wordt afgespeeld welke slechts door één fabrikant gemaakt wordt voor verschillende platformen, ziet het er overal exact hetzelfde uit en weet je van tevoren dat het exact hetzelfde werkt op elk platform. Het nadeel vloeit hier ook direct uit voort: het is niet volledig open-source, dus aanpassingen maken specifiek voor één toepassing is niet mogelijk. Hiervoor ben je afhankelijk van de ontwikkeling vanuit de fabrikant. 4.3.4 Ontwikkeling en implementatie Aan de serverkant zijn er voor geen van de onderzochte formaten speciale eisen. Er moeten enkele instellingen worden veranderd, waardoor het bestandsformaat van Flash, Shockwave of Silverlight applicaties aan de gebruiker getoond kan worden, maar dat is alles. Optioneel kan er gebruik gemaakt worden van speciale mediaserver-software van de verschillende fabrikanten, maar dit is niet verplicht. Voor het encoderen van audio/video zijn er wel eisen, maar met het gebruik van de populaire (open) H.264-codec kan hiervoor open-source software worden ingezet, zoals bijvoorbeeld MediaMosa10. Bij het creëren van Rich Media-applicaties dienen twee aspecten in het achterhoofd gehouden te worden. De eerste is de gebruikte technologie. Wanneer mediabestanden in het H.264-formaat worden gecodeerd, zijn ze bruikbaar in zowel Silverlight als Flash. De applicatie voor het combineren van data, zoals presentatieslides en video, moet wel specifiek voor de verschillende formaten worden geschreven. Met andere woorden: de audio-/videobestanden zijn herbruikbaar ongeacht of men Flash of Silverlight inzet. De programmatuur om twee of meer bronnen te combineren is echter niet uitwisselbaar. Deze wordt namelijk specifiek in Flash (ActionScript) of Silverlight (verschillende programmeertalen) geschreven. Hierbij heeft Silverlight een 'unique selling point', doordat zij ook populaire webprogrammeertalen ondersteunen, zoals PHP.
8
http://statowl.com/plugin_overview.php?1=1&timeframe=custom|2009-01|200906&interval=month&chart_id=16&fltr_br=&fltr_os=&fltr_se=&fltr_cn=&chart_id=9 9 http://www.adobe.com/products/player_census/shockwaveplayer/ 10 http://www.mediamosa.org/
12
4.3 Ontwikkeling in de verschillende formaten Naast de vraag op welke platformen de verschillende formaten draaien, is ook belangrijk hoe eenvoudig of complex het is om met de formaten te ontwikkelen. Onderstaande tabel geeft aan in welke programmeertalen er ontwikkeld wordt voor de verschillende formaten, welke tools er nodig zijn voor het ontwikkelen en wat daarvoor de kosten zijn. Daarnaast is er gekeken naar de server-kant: welke software is daar benodigd? Column1 Programmeertalen
SMIL SMIL
Flash ActionScript, XML
Programmeertools Leercurve
Geen specifieke (een teksteditor) Eenvoudig
Adobe Flash Professional Middelmatig
Proprietary
Nee
Serverafhankelijkheden Geen
Shockwave Lingo (JavaScript/C++‐ achtig) Adobe Director
Silverlight Elke .NET taal, Ruby, Python, XAML Visual Studio 2008
Stijl
Eenvoudig
Geen specifieke (een teksteditor) Eenvoudig
Ja
Ja
Ja
Nee
Geen, optioneel Flash Media Server, ColdFusion, LiveCycle CS Flash Professional: € 699, optioneel Flex Builder: € 179
Geen, optioneel Flash Media Server, ColdFusion, LiveCycle CS Director: € 999
Geen
Geen
Kosten developmentomgeving
Weinig tot niets
Client plug‐ins vereist
Nee, maar wel Flash Player (96% afhankelijk van browser installed base), AIR Player voor RIA's (onbekend)
Shockwave Player (57% installed base)
HTML5 HTML/XML
Visual Studio 2008: € Weinig tot niets 799 of Visual Web Developer Express 2008 SP1: gratis, Web Expression 3: € 150 Silverlight 3.0 plug‐in Nee, maar wel (30% installed base) afhankelijk van browser
Uit bovenstaande tabel kunnen we opmaken dat er aan de serverkant in principe geen verplichtingen zijn. Voor alle formaten geldt dat ze met een simpele web-/databaseserver te draaien zijn. Aan de client-kant zijn er wel enkele verplichtingen, voornamelijk bij proprietary standaarden. Hierbij geldt dat Flash de hoogste installed user base heeft, maar Silverlight erg in opkomst is. Voor de developmentomgevingen kunnen we kort zijn: die zijn grofweg voor alle proprietary formaten ongeveer even duur. Voor SMIL en HTML5 geldt dat er slechts een tekst-editor benodigd is. Die zijn gratis of tegen lage kosten beschikbaar.
5. Welke formaten worden reeds ondersteund en welke formaten zijn in ontwikkeling? De huidige situatie voor de formaten is al kort besproken in de vorige hoofdstukken. In dit hoofdstuk wordt verder in gegaan op de situatie op de markt en hoe we deze moeten interpreteren. 5.1 SMIL De eerste versie van SMIL verscheen in juni 1998. Eigenlijk is SMIL vanaf het begin geplaagd door weinig interesse. Daarnaast ontwikkelde Microsoft zijn eigen variant: HTML+TIME. Dit is een vergelijkbare techniek. SMIL werd oorspronkelijk niet specifiek ontwikkeld als techniek voor het web, maar meer als algemene 'multimedia synchronisatie techniek'. Ondersteuning voor SMIL in browsers bleef dan ook lange tijd uit. Ondersteuning in mediaspelers als Quicktime en Windows Media Player was er wel, maar juist op het web had deze techniek zijn potentie. Meer dan tien jaar later zijn we inmiddels bij SMIL3.0 aanbeland die in december 2008 is goedgekeurd als officiële standaard. Nog steeds blijft echter goede ondersteuning in de populaire browsers, zoals Firefox en Google Chrome, uit. Hoewel SMIL een mooi formaat is, is het afwachten of het in de toekomst goed ondersteund gaat worden in de browser. Daarover is nog niets bekend. 5.2 Flash Flash is het meest breed ondersteunde formaat. Je kunt er tegenwoordig vanuit gaan dat de gebruiker Flash heeft geïnstalleerd op de computer. Binnen een jaar zal dat op bijna elke nieuwe smartphone het geval zijn. Flash is constant in ontwikkeling. De laatste versie, Flash Player 10, biedt ondersteuning voor de H.264-codec. Dit is een grote stap voorwaarts voor de ondersteuning van Rich Media. Met Flash en zijn meer op RIA's gerichte broertje Flex, is het mogelijk zeer uitgebreide Rich Media toepassingen te maken. Denk hierbij aan het combineren van verschillende audio/video-bronnen, afbeeldingen, animaties, links met externe content, etc.. Over de volgende versie, Flash Player 11, is nog niets specifieks bekend. Te verwachten is dat Adobe in de nieuwe versie van Flash een aantal populaire features die Silverlight ook heeft inbouwt. Hierbij valt te denken aan:
Deep-linking, het linken naar bijvoorbeeld een 'pagina' in een Flash website Toegang tot de grafische kaart van de computer, waardoor 3D-bewerkingen uitgevoerd kunnen worden. Het ontwikkelen van een hybride applicatie voor binnen en buiten de browser – hoewel dit in Flash behoorlijk omslachtig is.
Het ligt dus in de lijn der verwachting dat zij op (enkele van) deze punten sterk zullen proberen te innoveren. Een groot voordeel voor Flash en Rich Media is de FLARToolKit. Dit is een extensie van Flash waarmee het eenvoudiger wordt Augmented-Reality-applicaties te bouwen in Flash. Een vergelijkbare toolkit is niet beschikbaar voor Silverlight, waardoor Flash op dat vlak een sterke troef in handen heeft op het gebied van Rich Media11. Adobe heeft voor Flash een release-cycle van ongeveer anderhalf 11
http://www.libspark.org/wiki/saqoosha/FLARToolKit/en
jaar. Flash Player versie 10 is in oktober 2008 op de markt gekomen, dus in het eerste half jaar van 2010 kunnen we de opvolger verwachten. Er is helaas nog geen officiële informatie over Flash Player versie 11 naar buiten gekomen. 5.3 Shockwave Waar Flash erg goed werkt voor audio/video en RIA's, is Shockwave zeer geschikt voor het maken van 3D-games of complexe toepassingen. Dit komt omdat het uitbereidbaar is door middel van zogenaamde 'Xtras'. In feite kun je bovenop de standaardfunctionaliteit uitbereidingen maken in C++, waardoor je bijvoorbeeld ondersteuning voor andere soorten apparaten kunt toevoegen. Denk hierbij aan touch-screens, speciale toetsenborden, uitwisseling van gegevens met andere bronnen, etc.. Hoewel de ontwikkeling van Director 11, de opvolger van de Shockwave-ontwikkeltool Director MX, vier jaar heeft geduurd, is Adobe weer volop bezig met de ontwikkeling van Director om deze duidelijk te onderscheiden van Flash. Hierbij is als strategie gekozen om de dingen waar Director sterk in is nog meer te accentueren12. Wederom heeft Adobe nog geen exacte details vrijgegeven over toekomstige features van Director/Shockwave. Wel duidelijk is dat ze hun pijlen richten op (3D)-games en educatieve markt. 5.4 Silverlight De laaste versie van Silverlight, versie 3.0, is in juli 2009 op de markt verschenen en dus nog zeer recent. Hoewel Silverlight nog op geen 30% van alle computers is geïnstalleerd, mag verwacht worden dat met de komst van Silverlight 3.0 dit percentage snel zal groeien. Grote commerciële partijen als televisieproducenten zetten het bijvoorbeeld in om hun uitzendingen via het internet te streamen. Silverlight wordt op het moment zeer sterk gepusht door Microsoft, die op deze markt nog geen sterke positie bezat. De technische mogelijkheden van Silverlight zijn groot en er mag dan ook verwacht worden dat er vele applicaties in Silverlight de komende tijd het licht zullen zien. Zeker gezien het feit dat programmeurs geen nieuwe programmeertaal hoeven te leren, maar simpelweg hun vertrouwde programmeertaal kunnen gebruiken uit de .NET suite. Microsoft probeert met Silverlight het gat tussen desktop- en webapplicaties weg te nemen. Zo gebruikt Microsoft de term RIA niet voor Rich Internet Application, maar Rich Interactive Application13. Eén van de speerpunten van Silverlight is dat de applicaties te integreren zijn in andere Windows producten. Denk hierbij bijvoorbeeld aan de side-bar in Windows Vista: Silverlight applicaties kunnen hier hun informatie in kwijt. Microsoft heeft dan ook hoge verwachtingen van dit platform dat pas met versie 3.0 echt tot leven is gekomen. Technisch gezien en vanuit ontwikkelaarsoogpunt is het formaat superieur aan alle eerder besproken formaten. Het ontbreekt alleen nog aan een goede installed user base, zoals Flash die al wel heeft. Afgaande op de situatie in de markt, mag verwacht worden dat Silverlight minimaal zijn huidige groei doorzet: 30% groei per zes maanden. 5.5 HTML5 In tegenstelling tot de overige formaten, is HTML5 juist nog niet ver ontwikkeld. De standaard is nog niet compleet en het is op sommige punten nog onduidelijk wat wel of niet in de standaard gaat komen. Het is daarom ook lastig te voorspellen wat de precieze uitkomst van dit formaat gaat zijn. Eén ding is zeker: het zal op het gebied van Rich Media vooral de simpelere Flash- en Silverlight12 13
http://creativemac.digitalmedianet.com/articles/viewarticle.jsp?id=495117-0 http://blogs.zdnet.com/microsoft/?p=389
15
applicaties gaan vervangen. HTML5 zal namelijk een ingebouwde audio/video-player hebben, waardoor de noodzaak van bijvoorbeeld Flash voor het streamen van media overbodig wordt. Daarnaast zullen eenvoudige animaties gemaakt kunnen worden met HTML5. Ook zal HTML5een belangrijke rol gaan spelen in webapplicaties, doordat het ondersteuning biedt voor lokale opslag van gegevens. Dit maakt het mogelijk zowel offline als online in de webapplicatie te werken. Uiteindelijk zal HTML5 waarschijnlijk vaak ingezet gaan worden in combinatie met de andere formaten. Zo kun je straks met HTML5 de locatie van een gebruiker bepalen en op basis daarvan in een Flash- of Silverlight-applicatie relevante gegevens tonen. Het kan echter nog enige tijd duren voordat de volledige HTML5 standaard compleet en geïmplementeerd is. In sommige browsers zijn al delen geïmplementeerd, anderen zijn er nog niet aan begonnen. De huidige HTML5 voorstel-standaard kent zijn oorsprong in 2007. Het World Wide Web Consortium (W3C) heeft als tijdspad aangegeven dat er in het derde kwartaal van 2010 een 'final' versie van HTML5 is. Gelijktijdig zijn browserfabrikanten bezig alvast (delen van) de HTML5standaard te implementeren. Firefox, Opera en Safari liggen hiermee voorop14. Op basis van deze gegevens kunnen we stellen dat begin 2011 een goede tijd is om te starten met de echte ontwikkeling van websites en applicaties in HTML5. Eerder kan er simpelweg niet vanuit gegaan worden dat HTML5 (deels) aan de client-kant ondersteund wordt. Hierbij dient wel een kanttekening gemaakt te worden. De implementatie van de HTML-standaard in browsers is in het verleden nog nooit op alle browsers helemaal gelijk geweest. Hierdoor kan het voorkomen dat er specifieke aanpassingen voor verschillende browsers gemaakt moeten worden. Het voldoen aan de standaarden is echter wel in alle browsers een groot aandachtspunt de laatste jaren, waardoor grote afwijkingen niet heel waarschijnlijk zijn. Een platformonafhankelijke techniek als Flash of Silverlight heeft hiervan geen last.
14
http://www.reelseo.com/ie8-html5/12030/
16
6. Welke van deze formaten zijn geschikt voor het gebruik op mobiele platformen? Na de analyse van de verschillende formaten kijken we in dit hoofdstuk welke van deze formaten bruikbaar zijn op mobiele platformen en waarom. 6.1 SMIL SMIL wordt op de desktop nog niet volledig ondersteund. Er kan dus niet vanuit worden gegaan dat het werkt aan de gebruikerskant. Het zelfde geldt voor de mobiele platformen: de implementatie van SMIL is te onvoorspelbaar en dus niet toepasbaar. Eindoordeel: Geen goede ondersteuning voor mobiele platformen. 6.2 Flash Flash wordt op de desktop al goed ondersteund. Voor mobiele platformen is er Flash Lite, een uitgeklede variant van Flash. Eén van de nadelen van Flash Lite is dat het geen streaming video ondersteunt. Daardoor is het voor veel Rich Media toepassingen niet bruikbaar. Adobe is echter bezig een mobiele variant van Flash te maken met dezelfde mogelijkheden als Flash 10. Deze nieuwe versie werd aangekondigd op het Adobe MAX 2009 evenement op 4 oktober 200915. Deze release werkt echter niet op de iPhone. Wel heeft Adobe in Flash CS5, welke in April 2010 op de markt komt, een functie ingebouwd om Flash projecten te exporteren als iPhone applicatie. Of hier beperkingen aan zitten is nog niet bekend. Dit zou de markt van Flash op mobiele platformen/smartphones enorm kunnen laten groeien. De mogelijkheden voor Rich Media toepassingen op mobiele platformen worden dan enorm. Eindoordeel: Goede ondersteuning voor mobiele platformen. 6.3 Shockwave Voor Shockwave is nog geen mobiele versie aangekondigd. Er zijn ook nog geen geruchten dat dit gaat gebeuren. Dit lijkt ook vooralsnog niet vreemd: Shockwave is sterk op 3D-gebied. De capaciteiten van mobiele hardware is nog niet groot genoeg om het grafische geweld van Shockwave in goede banen te leiden. Een mobiele variant van deze software lijkt dan ook nog toekomstmuziek en wellicht komt er zelfs nooit een speciale mobiele variant. In het laatste geval wacht Adobe simpelweg tot de 'desktop' en 'mobiele devices' simpelweg samensmelten, iets dat steeds meer gebeurt. Eindoordeel: Geen goede ondersteuning van mobiele platformen, 6.4 Silverligh Microsoft heeft voor Silverlight wel een mobiele versie aangekondigd16, Deze zou alle functionaliteit van Silverlight 3.0 moeten bevatten en op deze manier moeten concurreren met Flash Mobile. Het gerucht gaat echter dat Silverlight Mobile pas in Windows Mobile 7 beschikbaar komt. Dit lijkt aannemelijk, doordat er bij de aankondiging van Windows Mobile 6.5, die op 6 oktober is gelanceerd, niets wordt vermeldt over Silverlight Mobile. De uitgifte van Windows 7 Mobile stond gepland voor 1
15 16
http://www.adobe.com/devnet/logged_in/jchurch_flashplayer10.1.html?devcon=f2 http://silverlight.net/learn/mobile.aspx
17
februari 2010, maar er gaan geruchten dat dit verschoven wordt naar eind 201017. Dit lijkt aannemelijk, gezien het feit dat Windows Mobile 6.5 pas heel kort op de markt is. Of er een Silverlight versie voor andere mobiele platformen komt is nog niet bekend. Silverlight is echter wel een formaat om rekening mee te houden. Het ontwikkelgemak en de veelzijdigheid bieden ongekend veel mogelijkheden. Wanneer het daarnaast ook mogelijk is deze mogelijkheden op mobiele platformen aan te bieden, wordt het erg interessant om deze techniek in te zetten. Eindoordeel: In de toekomst waarschijnlijk goede ondersteuning voor mobiele platformen.t 6.5 HTML5 HTML5 wordt zeer zeker mogelijk op mobiele platformen. De browser van de iPhone, Safari, ondersteunt al delen van de toekomstige HTML5-standaard, evenals Opera Mobile. Het is slechts een kwestie van tijd voor de mobiele browsers de HTML5-standaard verder implementeren. Een belangrijke feature in HTML5 die zeer interessant is voor mobiel gebruik is de 'Geolocation'-API. Hiermee is het mogelijk de locatie van een gebruiker door de sturen aan een website, waardoor je locatiespecifieke informatie aan de gebruiker kunt tonen, zoals bijvoorbeeld historische gegegevens (in de vorm van video's, tekst, etc.) behorend bij die locatie of omgeving. Eindoordeel: Goede ondersteuning van mobiele platformen,,deels nu,volledig in de toekomst
17
http://en.wikipedia.org/wiki/Windows_Mobile#Windows_Mobile_7
18
7. Hoe zijn deze formaten toe te passen voor Rich Media? In het rapport hebben we onderzocht welke technieken op welke manier toe te passen zijn. In dit hoofdstuk komen enkele praktische toepassingen van Rich Media aan bod. Bij deze toepassingen beperken we ons bij het denken aan Rich Media niet tot slechts audio/video-toepassingen in combinatie met andere bronnen, maar ook aan games, RIA's, etc.. 7.1 Augmented Reality - Museumwereld Middels Augmented Reality op mobiele devices is het tegenwoordig mogelijk informatie 'in de zoeker van de camera' te tonen, op basis van locatie, bepaald door GPS, en kijkrichting, bepaald door een kompas. Een voorbeeld hiervan is te vinden in het volgende filmpje: http://www.youtube.com/watch?v=U2uH-jrsSxs In plaats van (zoals in voorgaand filmpje) metro stations, kun je op deze manier ook voor studenten een 'museum' van een hele stad of zelfs land maken. Denk bijvoorbeeld aan geschiedenis studenten: het is geweldig om als student met een dergelijke applicatie op je telefoon door een stad te lopen, waarbij je steeds in je scherm ziet waar bijvoorbeeld strijd is geleverd, wat er in 1685 op die locatie stond/was of waar de vroegere burgemeester van de stad woonde. Vervolgens kan dit zelfs gekoppeld worden aan bijvoorbeeld Wikipedia-informatie waarbij men kan doorklikken naar Wikipedia, mocht men er meer over willen weten. Dit concept is voor legio studies toe te passen. Voor bouwkunde studenten kunnen bijvoorbeeld architectonische hoogstandjes in een regio in kaart gebracht worden, met extra gegevens zoals de architect, bouwjaar, etc.. Voor de opleiding journalistiek kun je nieuws relateren aan locatie, waarna je op elke plek in het land ziet wat er bijvoorbeeld het afgelopen jaar op die specifieke locatie is gebeurd. Zo is er voor vele opleidingen een leuke en interessante toepassing te bedenken waarmee leren leuker, interactiever en moderner wordt. 7.2 Kennisdeling tussen studenten Hoewel studenten over vele middelen beschikken om kennis met elkaar te delen, wordt dit nog te weinig echt actief gedaan. Weblectures zouden hier verandering in kunnen brengen. Het idee van weblectures is reeds bekend: colleges worden opgenomen en zijn achteraf benaderbaar via internet. Helaas is dit dan nog steeds eenrichtingsverkeer: de server zendt beeld, de student kijkt. Het is zowel voor de individuele student als de opleidingsinstelling positief wanneer studenten veel actiever betrokken worden bij weblectures. Zo zou een toepassing om,in de tijdlijn van de weblecture, commentaar, vragen, tips of extra kennis toe te voegen veel meer interactie met studenten veroorzaken. Dit kan in de vorm van tekst, een link die dieper op het onderwerp ingaat of zelfs een video-reactie op dat specifieke onderwerp. Zo kun je naast de weblecture zelf ook direct andere visies of informatie tot je nemen. Het resultaat is dat de student beter na gaat denken over hetgeen verteld wordt. Daarnaast kan een docent zijn eigen 'verrijkte' college terugkijken en wellicht in de toekomst zijn college aanpassen aan de reacties/visies van studenten. 7.3 Koppelen van weblectures aan slides en externe informatiebronnen De mogelijkheid om weblectures te koppelen aan de presentatieslides wordt reeds toegepast. Dit wordt nog interessanter wanneer bepaalde keywords in de slides worden gekoppeld aan externe informatiebronnen. Veel slides bevatten afkortingen of vakjargon, waarbij de docent nog wel eens vergeet in te gaan op wat die termen dan precies inhouden. Er zijn echter veel externe bronnen die weer hele artikelen over bepaalde onderwerpen hebben, zoals Wikipedia. Wanneer deze keywords
19
(automatisch) gekoppeld worden aan bijvoorbeeld Wikipedia, kun je middels een tekstballontje het begrip verklaren of eventueel doorklikken naar de externe informatiebron. Dit worden ook wel 'mashups' genoemd: het samenbrengen van verschillende informatiebronnen, tot een nieuwe, vollediger informatiebron.
20
8. Conclusie Na een analyse van de markt voor Rich Media formaten kunnen we stellen dat er op korte termijn slechts twee echt geschikt zijn voor implementatie: Flash en Silverlight. Flash biedt zeer veel mogelijkheden op het gebied van het samenvoegen van informatie uit verschillende bronnen, streaming audio/video en gebruikersinteractie. Daarnaast heeft het een zeer hoge penetratiegraad. Silverlight is nog niet zo diep doorgedrongen in de markt, maar dit zal niet lang op zich laten wachten. Daarnaast vraagt de browser automatisch of Silverlight moet worden geïnstalleerd op het moment dat een gebruiker een Silverlight (web)applicatie probeert te openen. SMIL is een erg mooie techniek, maar niet goed doorgedrongen in de markt. Daarnaast zijn er geen tekenen dat dit op korte termijn staat te gebeuren. Wellicht kan het ingezet worden in hele specifieke toepassingen. Shockwave is een erg mooie techniek voor 'embedded' toepassingen in kiosk-achtige systemen of toepassingen die op een draagbaar medium verspreid worden, zoals presentaties of educatieve programma's. Er is echter geen directe aanleiding om hiervoor Shockwave in te zetten boven Silverlight. HTML5 biedt in de toekomst zeker mogelijkheden voor Rich Media, al was het maar voor mobiele devices die gebruik kunnen maken van locatiebepaling door HTML5. Daarnaast kunnen enkele eenvoudige toepassingen, zoals video-streaming, met HTML5 ook zonder 'externe' technologie als Flash uitgevoerd worden. HTML5 biedt echter vooral in combinatie met de andere formaten veel mogelijkheden. Denk hierbij aan een interface die in HTML5 is ontwikkeld met enkele Flash- of Silverlight-elementen waar nodig. HTML5 is echter pas bruikbaar als de standaard uitontwikkeld en geïmplementeerd is in de browsers. Dit duurt naar verwachting minimaal tot begin 2011. Flash of Silverlight? Flash is sinds jaar en dag heerser op het gebied van online Rich Media. Silverlight komt in feite net om de hoek kijken. Microsoft heeft echter met Silverlight 3.0 een product neergezet dat technisch superieur is aan Flash en flexibeler is in termen van programmeertalen en toepassingsgebied. Het biedt bovendien betere integratiemogelijkheden met andere applicaties. Daarnaast is de algemene opvatting dat Silverlight net iets sneller is voor het streamen van (hoge kwaliteit) audio/video. Silverlight is eigenlijk wat Flash 11 zou moeten zijn. Het enige nadeel van Silverlight is de mobiele variant: Flash Mobile verschijnt binnen afzienbare tijd op de markt. Silverlight Mobile zal nog minstens een jaar duren. Voor desktoptoepassingen is Silverlight de beste keus. Voor mobiele toepassingen biedt Flash binnenkort een zeer mooie propositie.
21