# Streaming media

Streaming media zijn media die rechtstreeks via computernetwerken (zoals het internet) worden gedistribueerd. Het proces wordt streamen genoemd. 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.
Het kan al of niet gaan om livestreaming. Als het niet live is spreekt men van een webvideo en video on demand. Streamingsites en -zenders zijn bijvoorbeeld Netflix, HBO, Hulu, RTL XL, Streamz, Disney+, Videoland, NLZiet, Film1, Amazon Prime Video en iTunes.

## Geschiedenis van het streamen

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, later volgden diverse andere Nederlandse partijen en verzorgde de VPRO webcastprojecten rond evenementen.
Microsoft geloofde niet in het internet. Manager Rob Glaser nam daarom alle mensen met mediakennis mee en startte RealNetworks. 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 codec-code gestolen en tot DivX omgedoopt werd, 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. In 2010 introduceerde Google zijn eigen codec WebM. Maar in 2012 verkiest Mozilla ook H.264 boven WebM.

## Codec

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 worden 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. Streamingcodecs schalen van GSM (9,6 Kbps) tot hd-tv (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

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

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

Afspelen kan vaak naar keuze in de browser of in een app. 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.
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 boven op 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'. Vanwege de hoge kosten van streamingdistributietechniek zijn er nog maar weinig aanbieders die het Realformaat gebruiken. Het marktaandeel van deze player is hierdoor dalende. Ook RealPlayer bouwt steeds meer op de onderliggende Windows Media- en QuickTime-architecturen voor het kunnen ondersteunen van diverse mediaformaten.
Er zijn softwareprogramma's die gebruikmaken van Windows Media Player, RealPlayer en andere spelers. Deze pakketten maken het gebruikersvriendelijker om net als op de normale televisie te zappen tussen kanalen.
VideoLAN is een opensource-videoplayer. Deze ligt momenteel 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. 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. Een andere optie is een smart-tv, een tv die rechtstreeks op het internet kan worden aangesloten, of rechtstreeks streamen vanop een smartphone of tablet met behulp van bijvoorbeeld een Chromecast of Apple TV.

## Virtueel knippen en plakken

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 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

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 streamingserver afgeschermd door middel van een gebruikersrechtenmanagement. Omdat distributieservers van verschillende fabrikanten hiervoor hun eigen methodiek gebruiken kleven hier nadelen aan. 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 streamingserver(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 slagboomtoepassing op TCP/IP-stack-niveau, die hogere performance biedt. Deze slagboom is efficiënt, gebruiksvriendelijk en platformonafhankelijk 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

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 hoelang de datastroom of het bestand te bekijken of te beluisteren is. De licentieserver (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-service die verweven is met de eigen streamingmediacodecs, codeerprogramma's en afspeelprogrammatuur. De specificaties voor een industriestandaard MPEG-4-DRM 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 2009 bekend dat de hele Store DRM-vrij zou worden.

## Hosting en distributie

Om te streamen is een eigen streamingserver of een account op een streamingserver van een provider nodig. De kosten van streamingsoftware 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. Streamingproviders bieden gedeelde accounts (abonnement), dedicated servers (huur), mediaserverclusters of verspreide servers. Sommige aanbieders lijken goedkoop, maar rekenen achteraf hogere bedragen voor gegenereerd dataverkeer.
Ook de werkelijk beschikbare bandbreedte dient toereikend te zijn. Shared servers dienen een eigen 100Mbps-link naar het internet te hebben. Dedicated servers dienen over 100 Mbps of zelfs een of meerdere gigabitverbindingen te beschikken. Het service level agreement (SLA) bevat de voorwaarden van de dienstverlening, waaronder de 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) wil 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 mediahostingbedrijven met streamingalternatieven 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-screentoepassingen is daarom in opkomst. Multi-screen is de term die wordt gebruikt voor het kunnen streamen van content naar verschillende type apparaten, spelers en plug-ins vanaf dezelfde server. Wowza Streaming Engine is een gevestigde naam in de multi-screenwereld. De opensourceserver Mistserver vormt hiervoor een alternatief. Anders dan andere opensourceserverproducten (Red5, crtmpserver) is dit het eerste product dat een multi-screentoepassing aanbiedt in een Plug & Play-formaat.
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 in 2005 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, contentbeheer 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.

## Coronapandemie

Streamingdiensten waren erg populair tijdens de coronacrisis, die begon in 2020, aangezien bioscopen daardoor een aantal keren gedurende een bepaalde periode hun deuren moesten sluiten (lockdown). Sommige films die in deze periodes in de bioscoop zouden komen, werden rechtstreeks uitgebracht op streamingdiensten, zodat mensen deze thuis konden bekijken.