Streaming media

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

Streaming media zijn media die rechtstreeks via computernetwerken (zoals het internet) worden gedistribueerd. Het proces wordt streamen genoemd en wordt gebruikt bij het webcasten en is een populaire distributiemethode bij het op verzoek bekijken van webvideo's. Tijdens het streamen wordt continu een gedeelte van de data in een buffer geplaatst, opdat een programma dit kan afspelen. Hierdoor kunnen de ontvangen media (video en audio) direct geconsumeerd worden zonder dat de gehele uitzending gedownload is.

Geschiedenis van het streamen[bewerken]

De vroegst bekende stream is de webcast koffiepotcamera van Cambridge die werd gebruikt om te zien of de koffie al doorgelopen was. Deze bestond al in 1991, lang voordat het wereldwijd web bekendheid kreeg. In Nederland zijn Stef Van der Ziel en Adam Curry pioniers. In 1994 produceerde Van der Ziel de eerste Nederlandse webcast[bron?], later volgden diverse andere Nederlandse partijen en verzorgde de VPRO webcastprojecten rond evenementen[bron?].

Microsoft geloofde niet in het Internet.[bron?] Manager Rob Glaser nam daarom alle mensen met mediakennis mee en startte RealNetworks[bron?]. In 1996 kwam het bedrijf met RealAudio uit. Voor het eerst was het mogelijk om redelijke kwaliteit live-audio via smalbandinternet te distribueren, door middel van een propriëtaire codec, reflectieserver en mediaspeler. Andere initiatieven zoals VDO werden door RealNetworks opgekocht. In 1997 kwam RealNetworks ook met video-ondersteuning. In 1998 nam Microsoft een licentie op RealVideo-technologie om deze in de eigen Media Player in te bouwen. Kort daarop lanceerde RealNetworks RealVideo G2, waardoor de licentie van Microsoft weinig waarde meer had. In 1999 lanceerden Apple en Microsoft hun streamingmediaproducten, respectievelijk gebaseerd op Apples QuickTime - dat al sinds 1991 bestond - en het bij Microsoft ontwikkelde Netshow, later Windows Media gedoopt.

Omdat geen van de drie productlijnen van RealNetworks, Microsoft en Apple onderling uitwisselbaar waren, werd gevreesd voor een 'mediaplayeroorlog'. Om acceptatie bij de consument voor streamingdiensten te bevorderen besloot de Motion Pictures Expert Group (bekend van MPEG-1, MPEG-2 en dus ook MP3) de strijdende partijen uit te nodigen voor deelname aan MPEG-4. RealNetworks stelde het RTSP/RTP-protocol voor als standaard voor distributie. Dat werd geaccepteerd. Apple stelde het QuickTime atom-gebaseerde bestandsformaat voor. Dat werd geaccepteerd. Microsoft stelde haar MPEG-4-videocodec voor, maar dat werd afgewezen. Mede omdat na publicatie de codeccode werd gestolen en omgedoopt tot DivX trok Microsoft zich terug uit de MPEG-4-standaardisatie. Microsoft MPEG-4 is dan ook niet uitwisselbaar met de ISO- of ISMA MPEG-4-producten op de markt en is door Microsoft zelf al tot onderhoudsversie verklaard.

RealNetworks' technologiestrategie berust inmiddels niet meer op het eigen RealVideo-formaat, maar op ondersteuning van meerdere formaten, ook die van Apple en Microsoft. De ondersteuning van deze formaten is overigens niet officieel en ligt technologisch één à twee generaties achter. Apple committeerde zich aan de open MPEG-4- en 3GPP-standaarden en Microsoft positioneerde het proprietary Windows Media-formaat. De mediaspeleroorlog werd inmiddels afgespeeld op terreinen buiten de desktop-pc met 3GPP dominant op de mobiele markt. In de Hd dvd- en settopboxmarkt was de strijd onbepaald tussen Windows Media en H.264 (MPEG-4). In 2008 besloot Microsoft om H.264 toe te voegen aan Silverlight [1]. In 2010 introduceerde Google zijn eigen codec WebM. Maar in 2012 verkiest Mozilla ook H.264 boven WebM [2].

Codec[bewerken]

Codecs zorgen voor een efficiënte distributie van beeld en geluid. In het algemeen zijn codecs voor streaming media 'lossy' waarbij geluids- en beeldinformatie beperkt voor vloeiende distributie. De keuze voor een codec is afhankelijk van de bandbreedte van de verbinding en de rekenkracht van de hardware voor compressie en afspelen. Streaming codecs schalen van GSM (9,6 Kbps) tot hdtv (4-10 Mbps). Andere bekende codecs zijn MPEG-1 (waaronder MP3), MPEG-2 en FLAC. Specifieke streamingmediacodecs zijn RealVideo Windows Media, MPEG-4 (opgevolgd door H.264), FLV en AAC. Op internet worden voor uitwisseldiensten MP3 en OGG voor audio gebruikt en Xvid voor video.

Bestandsformaat[bewerken]

Het bestandsformaat is de opbouw en beschrijving van een bestand. Het bevat naast (volgens de genoemde codecs gecomprimeerde) audio- en videobestanden ook zogeheten metagegevens: technische beschrijvingen van de audio- en videobestanden, inhoudelijke beschrijvingen van het document, en tot slot biedt een bestandsindeling mogelijkheden tot interactieve functies. Voorbeelden zijn de .MOV QuickTime-containerindeling, waar ook de .MP4-, MPEG-4-, en .3GP-bestandsindelingen op zijn gebaseerd. 3GP is de standaard voor video op mobiele telefoons. Andere, minder uitgebreide bestandsindelingen zijn .ASF (ook bekend als .WMV) van Microsoft en .RM van RealNetworks. Zogeheten DivX-bestanden maken gebruik van de eenvoudige .AVI-bestandsindeling met daarin een als DivX-gecodeerd videospoor en MP3-audiospoor. DivX 6 introduceerde een eigen bestandsindeling (.divx) waardoor net zoals bij MPEG-4-ondertiteling, markeringen en andere interactieve functies mogelijk werden. Het FLV-formaat is een proprietaryformaat van Macromedia en gebruikt H.263 of ON2 VP6 als videocodec en MP3 als audiocodec.

Vrijwel alle producenten van mobiele telefoons ondersteunen het 3GPP-formaat. Deze industriestandaard is een afgeleide van MPEG-4 met specifieke kenmerken voor zaktelefoons zoals vaste afspraken voor schermgrootte en video- en audiocodecs. 3GPP is ook het formaat dat gebruikt wordt voor DVB-H (Digital Video Broadcasting voor Handhelds). Uitzondering zijn vooralsnog de Microsoft Mobile gebaseerde smartphones, die een klein marktaandeel vormen en primair het Windows Media-formaat ondersteunen: optioneel kan echter 3GPP afspeelsoftware worden geïnstalleerd.

Opnemen[bewerken]

Voor het opnemen van geluid- en beeldmateriaal is een geluids- en/of videokaart nodig met een ingang, zoals composiet video, S-Video, DV of SDI. De opgenomen audio of video wordt geconverteerd (of getranscodeerd) naar het gewenste bestandsformaat.

Afspelen[bewerken]

Om af te spelen wordt een mediaspeler gebruikt dat streaming media ondersteunt.

ITunes is vooral populair door de ondersteuning van podcasts en vodcasts.

Windows Media Player wordt vaak gebruikt in omgevingen waar afscherming vereist is, vanwege DRM-voorzieningen.

QuickTime Player heeft voordeel van het meeliften van distributie via digitale fototoestellen, de populaire Apple iPod en het populaire Apple iTunes. Naast het eigen QuickTime-formaat worden meer dan 100 audio-, video- en afbeeldingsformaten ondersteund. Apple stimuleert het gebruik van de MPEG-4-standaard boven het eigen MOV-formaat. De QuickTime Player kent een Pro-versie, die tegen een geringe vergoeding zeer veel additionele features biedt, zoals knippen en plakken op metaniveau en het exporteren van audio en video naar tientallen high-end- en streamingformaten. De QuickTime Player wordt vaak verward met QuickTime, wat een uitgebreide multimedia-architectuur is die als framework bovenop het OS draait waardoor programma's van derden een rijke bibliotheek aan multimediafuncties kunnen gebruiken. Voorbeelden hiervan zijn iTunes, iMovie, Final Cut Pro, Word, Powerpoint, Premiere, Photoshop, Director en honderden multimedia-georiënteerde programma's voor zowel pc als Mac.

RealPlayer heeft onder het publiek een slechte naam opgebouwd wegens instabiliteit en vermeende 'spyware'[bron?]. Vanwege de hoge kosten voor streaming distributietechniek zijn er nog maar weinig aanbieders die het Realformaat gebruiken[bron?]. Het marktaandeel van deze player is hierdoor dalende[bron?]. Ook RealPlayer bouwt steeds meer op de onderliggende Windows Media- en QuickTime-architecturen voor het kunnen ondersteunen van diverse mediaformaten[bron?].

Er zijn softwareprogramma's die gebruikmaken van Windows Media Player, RealPlayer en andere spelers[bron?]. Deze pakketten maken het gebruikersvriendelijker om net als op de normale televisie te zappen tussen kanalen.

VideoLAN is een opensource-videoplayer. Deze ligt momenteel[bron?] onder vuur omdat de ontwikkelaars, in tegenstelling tot andere ontwikkelaars, geen licenties willen afdragen voor het gebruik van MPEG-4. VideoLAN vraagt eindgebruikers zelf de verantwoordelijkheid te nemen om een eenmalige vergoeding voor het gebruik van technologie aan de MPEG-4 licentiehouders te betalen maar faciliteert dit niet[bron?]. In de praktijk zien eindgebruikers deze bepaling in de VideoLAN EULA over het hoofd, en daarnaast zijn de licentiehouders niet ingesteld op het zaken doen met particulieren maar met technologie-ontwikkelaars.

In de woonkamer zijn settopboxen met hardware-afspeelprogramma's meer van toepassing.

Integreren in de browser[bewerken]

Het inbedden van de mediaspeler-plugin binnen een HTML-omgeving gebeurt vaak met ActiveX (Internet Explorer-familie) of EMBED (Mozilla-familie). De mediaspeler wordt dan niet als extern programma gestart, maar binnen de webpagina getoond. Hiermee kan de aanbieder de video in een eigen vormgegeven html-speler aanbieden.

Virtueel knippen en plakken[bewerken]

Het is mogelijk om random op een willekeurig tijdstip in VOD-streams te beginnen. In plaats van eerst het volledige bestand te moeten downloaden kan de server vanaf elk tijdsmoment beginnen te spelen. De Virtuele Snijmachine[3] is een publieke webgebaseerde tool die het mogelijk maakt om fragmenten virtueel uit een VOD-stream te knippen. Er wordt geen werkelijk gedeelte van de video gekopieerd (deze blijft in zijn geheel op de server staan), maar er wordt een metafile gegenereerd waarin de VOD-stream-URL, de starttijd en de doorlooptijd staan vermeld. Dit bestand opent automatisch de juiste mediaspeler en zorgt ervoor dat alleen het fragment wordt afgespeeld. Werkt met de meest gangbare mediaspelers.

Afscherming[bewerken]

Soms is het gewenst audio of video content af te schermen. De redenen hiervoor kunnen onder meer privacy, geheimhouding, rechten of commerciële exploitatie zijn, zoals het huren van een online speelfilm. Er zijn meerdere mogelijkheden om streams af te schermen. Soms wordt een combinatie gebruikt:

  • Obscurity: het niet vertellen of verbergen van de URL (locatie) van het streamingbestand. Een website probeert de bron af te schermen. Deze vorm van afscherming wordt ten zeerste afgeraden omdat de URL snel te achterhalen is en via Usenet, IRC en andere sociale netwerken snel verspreid kan worden.
  • Wachtwoordbeveiliging: bestanden, of mappen met bestanden worden op de streaming server afgeschermd door middel van een gebruikersrechtenmanagement. Omdat distributieservers van verschillende fabrikanten hun eigen methodiek hiervoor op na houden is dit ook geen aan te raden oplossing. Gebruikers moeten meerdere wachtwoorden onthouden, of dubbel invoeren, of beheerders moeten complexe koppelingen bouwen en drievoudig gebruikersbeheer gaan implementeren. Gebruikers kunnen wachtwoorden gaan delen. Voor sommige mediaservers zijn plug-ins beschikbaar die met gebruikersdatabanken kunnen worden gekoppeld.
  • Netwerkafscherming: Een server wordt binnen een afgeschermd netwerk (intranet, VPN) geplaatst, of toegang tot de server wordt beperkt tot een beperkt aantal IP-ranges. Hiermee kan op betrekkelijk eenvoudige wijze afscherming voor een bepaalde groep worden geregeld. Afscherming is echter niet op persoonlijk niveau (authenticatie) mogelijk.
  • Slagboom: Een slagboom is een server die tussen de streaming server(s) en het netwerk (vaak is dit het internet) wordt geplaatst. De website genereert een unieke sessiecode en plakt deze achter de URL. De slagboom geeft enkel toegang tot de URL indien de sessiecode geldig is. Na verloop van de sessie dient de gebruiker via de website een nieuwe aan te vragen. Een eenvoudige firewall kan deze functie invullen, maar performance hiervan is laag. Er is ook een slagboom oplossing op TCP/IP-stack-niveau, welke hogere performance biedt. Deze slagboom is een zeer efficiënte, gebruiksvriendelijke en platformonafhankelijke afschermingsoplossing en volstaat overal waar encryptie van de content geen vereiste is.
  • DRM: De zwaarste afschermingsmethode is Digital Rights Management, wat in de volgende sectie wordt behandeld.

Digital Rights Management[bewerken]

Met Digital Rights Management (DRM) worden de datastromen en bestanden met een sleutel onleesbaar gemaakt. Alleen de kijkers met een passende sleutel zijn in staat om de stromen en bestanden te openen. Het is echter niet mogelijk de sleutel te kopiëren, te delen of te overhandigen aan een ander. Men kan een eigen sleutel bemachtigen door bijvoorbeeld eerst een transactie te voltooien. Dit kan een financiële transactie zijn, maar ook reguliere authenticatie. In de sleutel zitten zogeheten 'business rules' opgeslagen. Deze regels bepalen hoe vaak en hoe lang de datastroom of het bestand te bekijken of te beluisteren is. De licentie server (die de sleutel heeft uitgegeven) kan eventueel controleren of de sleutel nog geldig is en of de regels in de sleutel wellicht dienen te worden aangepast. De pc kan ook tijdelijk de rol van licentieserver over nemen en de licentie sublicenseren aan bijvoorbeeld een mp3-speler.

DRM stelt de eigenaar of openbaarmaker in staat om alleen degenen die betaald hebben voor content toegang tot deze content te bieden. In combinatie met streamingmediaservers is het kijk- en luistergedrag exact te meten. Microsoft en RealNetworks hebben een operationele proprietary DRM-oplossing die verweven is met de eigen streamingmediacodecs, codeerprogramma's en afspeelprogrammatuur. De specificaties voor een industriestandaard MPEG-4-DRM-oplossing zijn gereed en toepassingen worden op het moment van schrijven ontwikkeld. Voor mobiele toepassingen is er de OMA DRM-specificatie. Apple hanteert voor de populaire iTunes Music Store de proprietary FairPlay-DRM-techniek, maar maakte op 5 januari bekend dat de hele Store DRM-vrij zal worden.

Hosting en distributie[bewerken]

Om te streamen is een eigen streaming server of een account op een streaming server van een provider nodig. De kosten van streaming software lopen flink uiteen. Sommige software is gratis en open source, maar heeft een enorme leercurve; andere software (RealServer, Flash Media Server) kan gestapeld oplopen tot 400.000 euro. Streaming providers bieden gedeelde accounts (abonnement), dedicated servers (huur), mediaserverclusters of verspreide servers. Sommige aanbieders lijken goedkoop, maar rekenen achteraf hogere bedragen voor gegenereerd dataverkeer. De markttarieven per 2006 zijn 3 tot 5 euro (Nederlands peeringverkeer) en 5 tot 10 euro (INT) per Mbps of 0,15 - 0,25 per GB, afhankelijk van het volume dat men inkoopt. Het komt voor dat aanbieders 15 tot 40 euro per Mbps voor Nederlandse verkeer vragen of 0,50 tot 6 euro per GB. Vraag ook naar de werkelijk beschikbare bandbreedte. Shared servers dienen een eigen 100Mbps-link naar het internet te hebben. Dedicated servers 100 Mbps of zelfs een of meerdere gigabit verbindingen. Vraag met name naar de SLA (Service Level Agreement). Dit is een garantie voor de beschikbaarheid van de server(s), of deze actief gemonitord worden en de snelheid waarmee een defect of crash wordt hersteld.

De Flash Media Server II kostte circa 4500 dollar per 150 connecties. Als men een dergelijke server ongelimiteerd aan een gigabitverbinding (1000 gelijktijdige kijkers op 1 Mbps) wilt aanbieden, kost dit de gebruiker veel geld aan softwarelicenties. Daarom bieden sommige hostingproviders FLV-hosting als progressive download aan. Het nadeel van deze methode is dat er geen random toegang tot fragmenten mogelijk is, geen goede metingen kunnen worden verricht. Inmiddels starten innovatieve media hosting bedrijven met streaming alternatieven voor FLV-bestanden die wel random access en snelle bursting bieden. Adobes Flash Media Server III wordt gesplitst in een betaalbare (4500 dollar) ongelimiteerde mediaserver en een duurdere (meer dan 10.000 dollar) interactieve server.

Een nadeel aan de Flash Media Server is dat hij alleen geschikt is voor het streamen naar de Flash-plug-in of spelers die overweg kunnen met de Flashprotocollen. Een nieuwe generatie multi-screen oplossingen is daarom in opkomst. Multi-screen is de term die word gebruikt voor het kunnen streamen van content naar verschillende type apparaten, spelers en plugins vanaf dezelfde server. Wowza Media Server is nu al enkele jaren een gevestigde naam in de multi-screenwereld. Recent[bron?] is hier de gratis opensourceserver Mistserver bijgekomen. Anders dan andere opensourceserverproducten (Red5, crtmpserver) is dit het eerste product wat een multi-screenoplossing aanbied in een Plug & Play-formaat. Wowza Media Server kost per server 995 dollar en de betaalde variant van Mistserver kost per server 299 euro. Beide software komt zonder bandbreedte en processor restricties.

Nieuw is p2p-distributie. Elke kijker wordt hierbij ook een zender. Bedrijven als Octoshape is het gelukt om p2p ook geschikt te maken voor live-uitzendingen.

In 2005 is het volumeverkeer over de AMS-IX verdubbeld. De grootste groeier was streamingverkeer (met 80%). Aangenomen wordt dat van de 100Gbps-dataverkeer, circa 10 Gbps al streams is. Streamingverkeer groeide sneller dan peer-to-peer, downloads, usenet, e-mail en surfen bij elkaar. In 2006 wordt een nog snellere groei verwacht. Om die reden wordt streamingverkeer steeds vaker via peering (via het AMS-IX-knooppunt) verwerkt, of decentraal gedistribueerd. Traditioneel worden servers centraal geplaatst achter een backbone. Echter, door de servers decentraal (netwerk-topologisch) bij internetproviders te plaatsen worden de backbones ontlast en zijn er nauwelijks kosten meer voor dataverkeer. Bovendien kan er beter worden geschaald, en kan een kwaliteitsgarantie worden afgegeven, alhoewel sommige centrale clusters zeer goedkoop zijn en al hoge performance bieden.

Om de centrale servers goed te kunnen beheren, content-beheer eenvoudig te houden, gebruikers te kunnen verdelen over de vele servers en centraal de logbestanden te kunnen verwerken is een zogeheten 'CDN'-managementserver nodig. De meeste exploitanten van een CDN ontwikkelen en exploiteren deze technologie exclusief voor zichzelf, Akamai en Vitalstream zijn hier voorbeelden van. Inmiddels zijn commerciële CDN-producten gelanceerd, waarmee elke provider of omroep tegen lage kosten en een korte 'time to market' zijn eigen CDN kan uitrollen.

Zie ook[bewerken]

Externe bronnen[bewerken]

Bronnen, noten en/of referenties
  • Onderdelen van deze teksten zijn gepubliceerd en vrijgegeven met toestemming Stef van der Ziel.