Live streaming

Vad är livestreaming?

Streaming är den metod för dataöverföring som används när någon tittar på video på Internet. Det är ett sätt att leverera en videofil lite i taget, ofta från en fjärrlagringsplats. Genom att överföra några sekunder av filen åt gången över internet, behöver klientenheter inte ladda ner hela videon innan de börjar spelas upp.

Livestreaming är när den strömmade videon skickas över internet i realtid, utan att först spelas in och lagras. Idag kan TV-sändningar, videospelsströmmar och video på sociala medier alla livestreamas.

Tänk på skillnaden mellan vanlig streaming och livestreaming som skillnaden mellan en skådespelare som reciterar en memorerad monolog och att improvisera ett tal. I den förra skapas innehållet i förväg, lagras och skickas sedan vidare till publiken. I det senare får publiken innehållet i samma ögonblick som skådespelaren skapar det – precis som i livestreaming.

Termen livestreaming syftar vanligtvis på sända liveströmmar: en-till-många-anslutningar som går ut till flera användare samtidigt. Videokonferenstekniker som Skype, FaceTime och Google Hangouts Meet fungerar på protokoll för realtidskommunikation (RTC) snarare än de protokoll som används av en-till-många livestreamsändningar.

Komprimering och kodning

Därefter komprimeras och kodas den segmenterade videodatan. Data komprimeras genom att redundant visuell information tas bort. Till exempel, om den första bildrutan i videon visar en person som pratar mot en grå bakgrund, behöver den grå bakgrunden inte återges för några efterföljande bildrutor som har samma bakgrund.

Se videokomprimering som att lägga till en ny möbel i ett vardagsrum. Det är inte nödvändigt att köpa helt nya möbler varje gång en ny stol eller sidobord läggs till. Istället är det möjligt att hålla rumslayouten ungefär densamma och byta ut bara en del i taget, ibland göra större omarrangemang vid behov. På samma sätt behöver inte varje bildruta i en videoström renderas totalt – bara de delar som ändras från bildruta till bildruta, som rörelsen i en persons mun.

CDN-distribution och cachning

När livestreamen har segmenterats, komprimerats och kodats (vilket bara tar några sekunder), måste den göras tillgänglig för dussintals eller miljontals tittare som vill titta på den. För att upprätthålla hög kvalitet med minimal fördröjning samtidigt som streamen visas till flera tittare på olika platser, bör ett CDN distribuera den.

Ett CDN är ett distribuerat nätverk av servrar som cachelagrar och serverar innehåll på uppdrag av en ursprungsserver. Att använda ett CDN resulterar i snabbare prestanda, eftersom användarförfrågningar inte längre behöver resa hela vägen till ursprungsservern utan istället kan hanteras av en närliggande CDN-server. Att hantera förfrågningar och leverera innehåll på detta sätt minskar också ursprungsserverns arbetsbelastning. Slutligen gör CDN:er det möjligt att effektivt servera innehåll till användare runt om i världen eftersom deras servrar är placerade över hela världen istället för klustrade i ett enda geografiskt område.

Ett CDN kommer också att cache – tillfälligt spara – varje segment av livestreamen, så de flesta tittare kommer att få livestreamen från CDN-cachen istället för från ursprungsservern. Detta gör faktiskt att livestreamen kommer närmare realtid även om cachad data ligger några sekunder efter, eftersom den minskar tiden för tur och retur (RTT) till och från ursprungsservern.