Waarom is adaptief video streaming belangrijk?

Het internet is een onbetrouwbare lappendeken van duizenden onderling verbonden netwerken. Er is geen end-to-end controle of kwaliteitscontrole. Sommige gebruikers hebben een geweldige en constante gigabitverbinding, terwijl anderen een wankele gedeelde WiFi-verbinding hebben. Hun bandbreedte varieert.

Video is veruit de zwaarste toepassing op het web. Om een video in realtime aan een kijker te leveren, moet de end-to-end verbinding support sneller zijn dan realtime levering. Als er een hik of een prestatiedip is, zullen gestreamde video's met een enkele bitsnelheid en progressief gedownloade video's bufferen. En dat is een slechte ervaring.

Hier komt adaptief streaming. In plaats van één kwaliteit te creëren, worden er meerdere kwaliteiten van video's en live streams gecreëerd door het proces dat transcoding wordt genoemd.

hoge kwaliteit video transcoding
Progressieve video downloads versus adaptief video streaming

Hoe werkt adaptief streaming?

Videospelers hebben kleine algoritmes die de schermgrootte, verwerkingscapaciteit en bandbreedte van het apparaat controleren. Afhankelijk van deze variabelen beslist de player welke kwaliteit hij ophaalt van het streaming platform.

Vroeger werd adaptive streaming uitgevoerd via propriëtaire protocollen, met propriëtaire players en servers, zoals RealVideo en Windows Media Streaming.

Tegenwoordig is adaptive streaming gebaseerd op HTTP-verkeer, met video chunks en manifestbestanden. Dit heeft enkele nadelen (geen sessies, veel logs!), maar de voordelen zijn CDN caching (schalen en prestaties) en fijnmaziger schakelen tussen bitsnelheden.

Het proces van het opsplitsen van video's in deze kleine segmenten (of chunks) wordt transmuxing genoemd. Sommige transcoders transmuxen automatisch, maar transmuxen kan ook on the fly gebeuren na transcoding. Transcoderen is CPU-intensief, transmuxen niet. De meest voorkomende formaten voor adaptieve HTTP streaming zijn HLS (web) en DASH (OTT).

Om adaptieve streams te kunnen aanbieden, moeten je video's getranscodeerd zijn naar meerdere bitsnelheden.

Wat is video transcodering?

Hoewel transcoding vaak wordt verward met encoding, zijn dit twee verschillende processen. Coderen is het creëren van een video of streams uit een bron. Transcoderen is het proces van het maken van een of meerdere kwaliteiten van een video (of stream), geschikt voor afspelen op het web. Als je professioneel streaming op het web wilt gebruiken, moet je naar meerdere kwaliteiten transcoderen en adaptieve bitsnelheid streaming gebruiken in plaats van progressieve downloads. De gebruikers zullen een hogere kwaliteit ervaren en veel minder bufferen.

Hoe transcodeer je een video?

1. Videoplatforms

De meeste video platforms transcoderen automatisch voor je. Upload een video, en op magische wijze creëren ze meerdere kwaliteiten. Ze rekenen een vergoeding per minuut. Dat is gemakkelijk. Je hebt echter nul controle over de kwaliteiten en ook geen controle over de prijs.

Monetising transcoding is een van de belangrijkste inkomstenbronnen voor video platforms. Omdat dit CPU-intensief is, besteden ze dit uit aan externe cloud diensten. En die zijn duur. Daarom is er een potentiële prikkel om de kwaliteit te verlagen, wat misschien niet in jouw belang is.

2. Bouw je eigen transcoding boerderij

We noemen dit on-premises transcoding. U koopt of huurt servers, installeert transcoding software en verwerkt uw eigen video's. Zo hebt u volledige controle over kosten en kwaliteit.

Je kunt de transcoding tunen en extra verwerking toevoegen, zoals kleurcorrectie, dynamische inhoud invoegen en codering. Volledige controle. Tenzij je een grote operatie hebt, kan het vrij duur worden, zowel in technische als in personele middelen.

De meeste video platforms staan je niet toe om je getranscodeerde media rechtstreeks naar hun origin services te uploaden. Hun workflow zit opgesloten in hun eigen transcoding proces. Je moet dus ook een alternatief vinden voor hosting en levering.

3. Gebruik cloud transcoding diensten

Een alternatief voor video platforms en on-premises is het gebruik van cloud transcoding diensten. Clouds bieden professionele transcoding diensten en bieden je veel controle over de profielen. Om zo'n dienst te implementeren en te gebruiken, heb je een expert nodig en clouds kunnen duur worden.

Clouds kunnen duur worden omdat transcoding een CPU-intensieve dienst is, vooral voor live streaming. Maar het is een mooi alternatief tussen on-prem en video platformgebaseerde transcoding.

In het verleden besteedde Jet-Stream transcoding ook uit aan clouds. We namen de investering om geautomatiseerde workflows te bouwen en eenvoudig toegankelijke transcoding services aan onze klanten aan te bieden. Door dit eenmalig te doen, voor velen, en door automatisering, schaalden we en bespaarden we de kosten van onze klanten. Maar het was tijd om verder te gaan. We wilden onze klanten meer controle over de kwaliteit bieden. We wilden ook transcoding in-house uitvoeren, vanwege GDPR-compliance. En we wilden de kosten beter beheren.

Vorig jaar hebben we besloten om onze eigen cloud te bouwen. Deze bevindt zich in Europa en wordt gehost in eersteklas datacenters die groene energie gebruiken. En we besloten om alle applicaties intern te draaien, op onze eigen cloud. Het goede nieuws was dat we al een transcoding workflow (GUI&API) hadden. Daarom hoefden we alleen de engine te vervangen.

4. Jet-Stream Maelstrom.

Het beste van deze drie werelden. Het is eenvoudiger dan video platforms. Toch biedt het volledige controle over kwaliteit en kosten per video, en geeft het je de vrijheid om te transcoderen, te uploaden en video verwerkingsworkflows te automatiseren.

Hoe transcodeer je met Jet-Stream?

De basis van de Jet-Stream MaelStrom transcoding service is FFmpeg. In principe gebruikt iedereen in de industrie deze geweldige bibliotheek. We hebben onze eigen afgestemde builds gemaakt, met afgestemde transcoding profielen. We hebben veel video's bekeken ;).

Bovendien hebben we extra profielen toegevoegd: QuadHD en 4K. En we hebben de bestaande profielen afgestemd. Bovendien hebben we onze eigen nieuwe profielen vergeleken met de oude getranscodeerde AWS-uitvoer, om er zeker van te zijn dat de kwaliteit overeenkwam met die van de service of deze zelfs overtrof.

We hebben het gedrag van adaptieve streaming players geanalyseerd. In principe springen ze naar de hoogste bitsnelheid of naar de laagste bitsnelheid. En soms wordt een bitsnelheid in het midden gebruikt. We hebben geleerd dat 3-4 bitsnelheden voldoende zijn voor de meeste gebruikssituaties in de EU-zone, terwijl sommige platforms automatisch transcoderen naar 8 of zelfs 12 bitsnelheden: dat vereist onnodige CPU-bronnen en opslag, terwijl het geen betere QoE biedt. Natuurlijk kan jouw use case veel bitsnelheden nodig hebben, en dat is prima: we support het allemaal.

Bekijk de Easy, Smart, Expert transcoding demo video (6 minuten) hier.

Gemakkelijk.slim.expert.

We hebben een filosofie die we easy, smart en expert noemen. Deze hebben we ook toegepast op transcoding. Jet-Stream geeft je dus alle vrijheid over transcoding:

Gemakkelijk: slepen en neerzetten

Het gebruik van Jet-Stream services moet altijd eenvoudiger zijn dan video platforms. Je kunt dus gewoon een video bestand naar een van de transcoding presets slepen en het creëert op magische wijze de kwaliteiten. De prijs is concurrerend.

Slim: controle over kwaliteit en kosten

Slim betekent dat je de service kunt afstemmen op jouw specifieke behoeften, in kosten en kwaliteiten. Je kunt aangepaste transcoding profielen maken en kwaliteiten selecteren. Per video kun je de kwaliteiten en de kosten bepalen. Een niveau van controle dat je niet zult vinden bij video platforms.

Je kunt ervoor kiezen om de originele video op de hoogste bitsnelheid te houden. De transcoder voegt extra bitsnelheden toe. Op deze manier kun je adaptief streamen tot 8K. Dit is een functie die je niet zult vinden op gewone video platforms.

Expert: volledig geautomatiseerde besturing

Expert betekent dat je volledige controle hebt. Enkele voorbeelden:

Een geweldig expertvoorbeeld is de bypass-functie. Upload media rechtstreeks naar Jet-Stream Clouds origin servers. Wij doen automatisch de transmuxing voor u. U kunt uw eigen on-premises of externe cloud transcoderingsservice uitvoeren en uw media rechtstreeks uploaden naar de Jet-Stream Origin-services, in de originele, ongerepte kwaliteit. Je kunt zelfs met één klik externe Origin video hostingservices toevoegen.

Waarom Jet-Steam transcoding?

Met Jet-Stream krijg je eenvoudige, slimme en expertfuncties in één enkel platform. Stelt u zich de kostenbesparingen eens voor in vergelijking met het zelf bouwen van zo'n workflow op een cloud. Jet-Stream stelt u in staat om batch-to-ingest pipelines te maken en u kunt per video beslissen welk easy, smart of expert profiel wordt gebruikt. Bovendien kun je met API's de hele workflow automatiseren en besturen.

Bovendien kun je ook je eigen origin services en transmuxers draaien en deze origins met één klik verbinden met Jet-Stream. Meerdere kwaliteitsvertolkingen van dezelfde video worden automatisch gegroepeerd in logische assets door Jet-Stream's origin services. De ingebouwde real-time transmuxing service voert adaptieve HTTP HLS en DASH video's uit.

Als je professioneel wilt streamen, zul je transcoding willen gebruiken voor HTTP adaptive streaming. Voel je vrij om onze service te testen en zie zelf hoe eenvoudig en krachtig de MaelStrom transcoding service is.