Server-less OTT-Only Playout

Visit https://tv.eyevinn.technology/ for a demo
System Architecture for a Server-less OTT-only Playout

Channel Engine

server.get('/live/master.m3u8', function(req, res) {
session = generateNewSession();
res.send(
#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=300000,RESOLUTION=...
master300000.m3u8;session=$session
#EXT-X-STREAM-INF:BANDWIDTH=600000,RESOLUTION=...
master600000.m3u8;session=$session
...
);
});

server.get('/live/master(\d+).m3u8;session=(.*)', function(req, res) {
bandwidth = $1;
session = $2;
vod = getCurrentVod(session);
mediaSequence = getNextMediaSequence(vod, session);
res.send(mediaSequence.m3u8);
});

Content Distribution

Frontend Distribution

Content Ingest

Lambda function to trigger transcoding job

Asset Manager API

Demo

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store